当前位置: 编程技术>移动开发
本页文章导读:
▪UIApplicationDelegate协议决义的方法说明 UIApplicationDelegate协议定义的方法说明
下面是UIApplicationDelegate中相应的一些方法: 现在来看协议中定义的这些需要实现的方法分别是什么作用:1、- (void)applicationWillResignActive:(UIApplication *)ap.........
▪ 怎么控制图片不被自动缩放 如何控制图片不被自动缩放
在客户端的游戏制作过程中,经理会要处理一些图片,比如翻转,位移,缩放。
在我最开始做Android游戏开发的时间,最让我头大的就是Android的本身自带
的图片.........
▪ uitableview滚动到最后一起 uitableview滚动到最后一行
- (void)scrollTableToFoot:(BOOL)animated {
NSInteger s = [self.chatTable numberOfSections];
if (s<1) return;
NSInteger r = [self.chatTable numberOfRowsInSection:s-1];
if (r<1) return;
NSIndexPath *ip =.........
[1]UIApplicationDelegate协议决义的方法说明
来源: 互联网 发布时间: 2014-02-18
UIApplicationDelegate协议定义的方法说明
下面是UIApplicationDelegate中相应的一些方法:
现在来看协议中定义的这些需要实现的方法分别是什么作用:
1、- (void)applicationWillResignActive:(UIApplication *)application
说明:当应用程序将要入非活动状态执行,在此期间,应用程序不接收消息或事件,比如来电话了
2、- (void)applicationDidBecomeActive:(UIApplication *)application
说明:当应用程序入活动状态执行,这个刚好跟上面那个方法相反
3、- (void)applicationDidEnterBackground:(UIApplication *)application
说明:当程序被推送到后台的时候调用。所以要设置后台继续运行,则在这个函数里面设置即可
4、- (void)applicationWillEnterForeground:(UIApplication *)application
说明:当程序从后台将要重新回到前台时候调用,这个刚好跟上面的那个方法相反。
5、- (void)applicationWillTerminate:(UIApplication *)application
说明:当程序将要退出是被调用,通常是用来保存数据和一些退出前的清理工作。这个需要要设置UIApplicationExitsOnSuspend的键值。
6、- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application
说明:iPhone设备只有有限的内存,如果为应用程序分配了太多内存操作系统会终止应用程序的运行,在终止前会执行这个方法,通常可以在这里进行内存清理工作防止程序被终止
7、- (void)applicationSignificantTimeChange:(UIApplication*)application
说明:当系统时间发生改变时执行
8、- (void)applicationDidFinishLaunching:(UIApplication*)application
说明:当程序载入后执行
9、- (void)application:(UIApplication)application willChangeStatusBarFrame:(CGRect)newStatusBarFrame
说明:当StatusBar框将要变化时执行
10、- (void)application:(UIApplication*)application willChangeStatusBarOrientation:
(UIInterfaceOrientation)newStatusBarOrientation
duration:(NSTimeInterval)duration
说明:当StatusBar框方向将要变化时执行
11、- (BOOL)application:(UIApplication*)application handleOpenURL:(NSURL*)url
说明:当通过url执行
12、- (void)application:(UIApplication*)application didChangeStatusBarOrientation:(UIInterfaceOrientation)oldStatusBarOrientation
说明:当StatusBar框方向变化完成后执行
13、- (void)application:(UIApplication*)application didChangeSetStatusBarFrame:(CGRect)oldStatusBarFrame
说明:当StatusBar框变化完成后执行
下图是我总结的一个大概流程图,不是很准确但是基本上也说明了整个过程,仅供参考。
下面是UIApplicationDelegate中相应的一些方法:
现在来看协议中定义的这些需要实现的方法分别是什么作用:
1、- (void)applicationWillResignActive:(UIApplication *)application
说明:当应用程序将要入非活动状态执行,在此期间,应用程序不接收消息或事件,比如来电话了
2、- (void)applicationDidBecomeActive:(UIApplication *)application
说明:当应用程序入活动状态执行,这个刚好跟上面那个方法相反
3、- (void)applicationDidEnterBackground:(UIApplication *)application
说明:当程序被推送到后台的时候调用。所以要设置后台继续运行,则在这个函数里面设置即可
4、- (void)applicationWillEnterForeground:(UIApplication *)application
说明:当程序从后台将要重新回到前台时候调用,这个刚好跟上面的那个方法相反。
5、- (void)applicationWillTerminate:(UIApplication *)application
说明:当程序将要退出是被调用,通常是用来保存数据和一些退出前的清理工作。这个需要要设置UIApplicationExitsOnSuspend的键值。
6、- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application
说明:iPhone设备只有有限的内存,如果为应用程序分配了太多内存操作系统会终止应用程序的运行,在终止前会执行这个方法,通常可以在这里进行内存清理工作防止程序被终止
7、- (void)applicationSignificantTimeChange:(UIApplication*)application
说明:当系统时间发生改变时执行
8、- (void)applicationDidFinishLaunching:(UIApplication*)application
说明:当程序载入后执行
9、- (void)application:(UIApplication)application willChangeStatusBarFrame:(CGRect)newStatusBarFrame
说明:当StatusBar框将要变化时执行
10、- (void)application:(UIApplication*)application willChangeStatusBarOrientation:
(UIInterfaceOrientation)newStatusBarOrientation
duration:(NSTimeInterval)duration
说明:当StatusBar框方向将要变化时执行
11、- (BOOL)application:(UIApplication*)application handleOpenURL:(NSURL*)url
说明:当通过url执行
12、- (void)application:(UIApplication*)application didChangeStatusBarOrientation:(UIInterfaceOrientation)oldStatusBarOrientation
说明:当StatusBar框方向变化完成后执行
13、- (void)application:(UIApplication*)application didChangeSetStatusBarFrame:(CGRect)oldStatusBarFrame
说明:当StatusBar框变化完成后执行
下图是我总结的一个大概流程图,不是很准确但是基本上也说明了整个过程,仅供参考。
[2] 怎么控制图片不被自动缩放
来源: 互联网 发布时间: 2014-02-18
如何控制图片不被自动缩放
在客户端的游戏制作过程中,经理会要处理一些图片,比如翻转,位移,缩放。
在我最开始做Android游戏开发的时间,最让我头大的就是Android的本身自带
的图片自动缩放功能。而这往往不是我们所想要的。
遇到的问题:
1.图片加载后,被系统自动缩放,导致UI界面、地图元素位置混乱,惨不忍睹
2.在组合图片的时候,由于图片被缩放,无法找到原始位置的图块,导致绘制混乱
解决办法参考,本人是这样做的。在Android的API内有提供了一个Options的选项
类,可以让开发者定义一些属性,从而控制加载的图片!
做法如下:
/** * 创建一个Bitmp对象 * @param id 指定的资源ID * @return */ public static final Bitmap createBitmap(int id) { /** *MainActivity 为游戏的主Activity */ Resources res = MainActivity.getResources(); final DisplayMetrics metrics = res.getDisplayMetrics(); //------------以下处理,保证图片不会被缩放------------------- Options myOptions = new Options(); myOptions.inScaled = false; /** * 设置图片的分辨率 */ myOptions.inDensity = metrics.densityDpi; /** * 设置屏幕的分辨率率 */ myOptions.inScreenDensity = metrics.densityDpi; /** * 如果inScaled为false ,则以下的动作不会被执行 */ myOptions.inTargetDensity = metrics.densityDpi; Bitmap bitmap = BitmapFactory.decodeResource(res, id, myOptions); if (bitmap == null) System.out.println("请注意:加载资源不成功!"); return bitmap; }
这里不具体分析Options的 属性,感兴趣的朋友,可以在网上搜下!
欢迎您的指正,一起学习交流,希望以上能对你有所帮助!
[3] uitableview滚动到最后一起
来源: 互联网 发布时间: 2014-02-18
uitableview滚动到最后一行
- (void)scrollTableToFoot:(BOOL)animated { NSInteger s = [self.chatTable numberOfSections]; if (s<1) return; NSInteger r = [self.chatTable numberOfRowsInSection:s-1]; if (r<1) return; NSIndexPath *ip = [NSIndexPath indexPathForRow:r-1 inSection:s-1]; [self.chatTable scrollToRowAtIndexPath:ip atScrollPosition:UITableViewScrollPositionBottom animated:animated]; }
最新技术文章: