1. UIButton点击之后内部的图片会变暗的解决方法:
button.adjustsImageWhenHighlighted = NO;
2.设置图片之后,显示成蓝色,是因为IOS7之后系统做的渲染效果,解决方法:
[image imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
3.IOS中计算view的位置,很多情况下都要转换坐标系:
[window convertPoint:center fromView:window2];
将center点的参考点从window2转变为window。
4.用户界面是一个UIWindow,当弹出输入法的时候,用户界面就不在是keyWindow,此时要是显示一个view到界面的最前方可以使用 :
UIWindow *window = [[UIApplication sharedApplication].windows lastObject];
[window addSubview:view];
5.同一个uiview设置不同的内容(代码重用)时系统自动会加上动画效果
[UIView setAnimationsEnabled:NO]; //会关闭整个应用中的所有动画效果
// 操作完了了之后,立即开启动画效果
// 再次开启动画
dispatch_after(dispatch_time(DISPATCH_TIME_NOW,
(int64_t)(0.1 * NSEC_PER_SEC)),
dispatch_get_main_queue(),
^{ [UIView setAnimationsEnabled:YES];
});
6.NSTimer定时器,在应用进入后台的时候就会停止工作,想要其继续工作可以:
[[NSRunLoop mainRunLoop] addTimer:timer forMode:NSRunLoopCommonModes];
// 同时在AppDelegate中修改如下代码
/**
* 程序进入后台的时候调用
*/
- (void)applicationDidEnterBackground:(UIApplication *)application
{
// 提醒操作系统:当前这个应用程序需要在后台开启一个任务
// 操作系统会允许这个应用程序在后台保持运行状态(能够持续的时间是不确定)
UIBackgroundTaskIdentifier taskID = [application beginBackgroundTaskWithExpirationHandler:^{
// 后台运行的时间到期了,就会自动调用这个block
[application endBackgroundTask:taskID];
}];
}