ios7 tweak

原创 2013年10月21日 18:14:36
1.[UIView performWithoutAnimation:] 替代

[UIView setAnimationsEnabled:NO];

code here...

[UIView setAnimationsEnabled:YES];


2.实现tableView:estimatedHeightForRowAtIndexPath:代理函数或者设置estimatedRowHeight属性值,提供一个预估高度值,

对于可变高度的cell的表格视图可改进性能


3.UISearchDisplayController新增属性:displaysSearchBarInNavigationBar,可让搜索控件显示在导航栏,但不可与showsScopeBar同时设置为YES,即显示在导航栏的搜索控件不能有范围选择栏


4.UIResponder新增属性keyCommands,相应的有个新增类UIKeyCommand,可用于捕获蓝牙键盘的按键事件,例:

- (NSArray *)keyCommands 
{
    return @[[UIKeyCommand keyCommandWithInput:@"f"
                                 modifierFlags:UIKeyModifierCommand  
                                        action:@selector(searchKeyPressed:)]];
}

- (void)searchKeyPressed:(UIKeyCommand *)keyCommand 
{
    // Respond to the event
}

5.新增UIInputView,可用来自定义键盘或者扩展默认键盘


6.CTTelephonyNetworkInfo:用来判断手机当前的网络类型,是edge还是LTE或其他,currentRadioAccessTechnology的值可为:

CTRadioAccessTechnologyCDMA1x

CTRadioAccessTechnologyCDMAEVDORev0

CTRadioAccessTechnologyCDMAEVDORevA

CTRadioAccessTechnologyCDMAEVDORevB

CTRadioAccessTechnologyEdge

CTRadioAccessTechnologyGPRS

CTRadioAccessTechnologyHSDPA

CTRadioAccessTechnologyHSUPA

CTRadioAccessTechnologyLTE

CTRadioAccessTechnologyWCDMA

CTRadioAccessTechnologyeHRPD

CTTelephonyNetworkInfo *telephonyInfo = [CTTelephonyNetworkInfo new];
NSLog(@"Current Radio Access Technology: %@", telephonyInfo.currentRadioAccessTechnology);
[NSNotificationCenter.defaultCenter addObserverForName:CTRadioAccessTechnologyDidChangeNotification 
                                                object:nil 
                                                 queue:nil 
                                            usingBlock:^(NSNotification *note) 
{
    NSLog(@"New Radio Access Technology: %@", telephonyInfo.currentRadioAccessTechnology);
}];


7.下载字体:CTFontDescriptorMatchFontDescriptorsWithProgressHandler

获取可下载字体:

CFDictionary *descriptorOptions = @{(id)kCTFontDownloadableAttribute : @YES};
CTFontDescriptorRef descriptor = CTFontDescriptorCreateWithAttributes((CFDictionaryRef)descriptorOptions);
CFArrayRef fontDescriptors = CTFontDescriptorCreateMatchingFontDescriptors(descriptor, NULL);


Tint images with UIImage.renderingMode

UIImage *img = [UIImage imageNamed:@"myimage"];
img = [img imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];

UIImageRenderingMode Cheat Sheet


新增UIApplicationUserDidTakeScreenshotNotification通知,当用户截屏时触发


UIScreenEdgePanGestureRecognizer

UIScreenEdgePanGestureRecognizer *recognizer = [[UIScreenEdgePanGestureRecognizer alloc] initWithTarget:self action:@selector(handleScreenEdgeRecognizer:)];
recognizer.edges = UIRectEdgeLeft;
[self.view addGestureRecognizer:recognizer];


keyboardDismissMode:scrollView滚动时隐藏键盘

self.scrollView.keyboardDismissMode = UIScrollViewKeyboardDismissModeOnDrag;//刚拖动scrollView就隐藏键盘

self.scrollView.keyboardDismissMode = UIScrollViewKeyboardDismissModeInteractive;//从键盘上面点(scrollView未遮挡部分)向下滑动,键盘会跟着滑动;又往上滑动键盘也会跟着向上滑动

UIScrollViewKeyboardDismissModeNone//默认值,没有任何影响



参考网址:http://www.objc.io/issue-5/iOS7-hidden-gems-and-workarounds.html

UIKeyCommand自定义键盘

有时候给自己的程序添加一些自定义的快捷键也是有必要的,在需要添加快捷键的viewController里面添加 -(BOOL)canBecomeFirstResponder{     r...
  • huwenbo1hao
  • huwenbo1hao
  • 2015年04月14日 14:15
  • 1575

iOS逆向之二-一个简单的Tweak插件原理解析

iOS逆向之二-一个简单的Tweak插件 Tweak插件可以动态的注入到宿主程序中,修改宿主程序的运行流程 Tweak插件是使用theos开发的,所以首先要安装theos程序,并且越狱手机中需要安装C...
  • zhangyutangde
  • zhangyutangde
  • 2017年10月25日 11:17
  • 354

iOS越狱程序开发(3)- Your First Tweak

本系列包含下面4篇文章: iOS越狱程序开发(1)- 工具篇  iOS越狱程序开发(2)- 构建和部署  iOS越狱程序开发(3)- Your First Tweak  iOS越狱程序开发(4)- 总...
  • jinglijun
  • jinglijun
  • 2013年08月04日 11:22
  • 8645

iOS 越狱的Tweak开发

iOS 越狱的Tweak开发 iOS越狱开发中,各种破解补丁的统称为Tweak,通常意义上我们说的越狱开发,都是指开发一个Tweak. 基本上,tweak都依赖于一个名叫cydia Subs...
  • yohunl
  • yohunl
  • 2016年08月01日 14:36
  • 6259

iOS7适配问题总结

一、状态栏(statusBar) 在iOS7中view默认是全屏模式,状态栏的高度也加在了view的高度上,例如iOS7之前iphone5中self.view.frame.siz...
  • lianbaixue
  • lianbaixue
  • 2014年02月12日 15:51
  • 10532

iOS安全—阻止tweak注入hook api

在网上看到一种方法可以通过在Other Linker Flags中添加: 1-Wl,-sectcreate,__RESTRICT,__restrict,/dev/null 的方法来阻止dy...
  • zcrong
  • zcrong
  • 2016年06月09日 00:42
  • 1990

我的第一个TWEAK

第一个tweak iOS越狱tweak的常见问题
  • HK_5788
  • HK_5788
  • 2016年08月06日 17:56
  • 2212

iOS7 新后台及下载SDK介绍

在iOS7以前的系统中,App默认是不能后台运行的,如果要后台运行,可以采用以下两类方法:   (1)使用beginBackgroundTaskWithExpirationHandler函数,向...
  • chun799
  • chun799
  • 2014年06月08日 17:04
  • 7224

IOS7设计师笔记(原创)【ios7设计的尺寸】

图标尺寸 IOS7推出后,图标尺寸规范略有调整,为了得到更加精准的显示效果,大家可以参考参考下。 下表列出了图标的标准尺寸,按照此规范zuo作图,可以使图标能在搭载IOS7的多种设备中正确显示显示...
  • wangxiaohui6687
  • wangxiaohui6687
  • 2013年10月14日 10:04
  • 12472

《iOS开发指南》第二版 iOS7版-源码-样章-目录,感谢大家一直以来的支持

《iOS开发指南-从0基础到AppStore上线》第二版 iOS7版正式出版了 感谢大家一直以来的支持! 改版后采用全新的ios 7 api,详细介绍了最新的ios 7 开发相关的知识点,全部案例...
  • tonny_guan
  • tonny_guan
  • 2014年03月20日 17:01
  • 5764
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ios7 tweak
举报原因:
原因补充:

(最多只允许输入30个字)