iOS 3DTouchDemo

3DTouchDemo主要的內(nèi)容為四塊

1、Home Screen Quick Actions(主屏幕快捷操作)

主屏幕頁面的快捷操作按鈕需要 在APPDelegate中添加相應(yīng)的UIApplicationShortcutItem

//add ShortcutItem

-(void)addShortcutItems:(UIApplication *)application{

//這里給定的圖片,系統(tǒng)會再處理成 自己需要的圖片

UIApplicationShortcutIcon * icon = [UIApplicationShortcutIcon iconWithTemplateImageName:@"personal"];

UIMutableApplicationShortcutItem * itemtwo = [[UIMutableApplicationShortcutItem alloc]initWithType:@"two" localizedTitle:@"主功能1" localizedSubtitle:@"副標題" icon:icon userInfo:nil];

application.shortcutItems = @[itemtwo];}}

點擊相應(yīng)的按鈕會觸發(fā)APPDelegate 的事件

-(void)application:(UIApplication *)application performActionForShortcutItem:(UIApplicationShortcutItem *)shortcutItem completionHandler:(void (^)(BOOL))completionHandler{

[[NSNotificationCenter defaultCenter]postNotificationName:@"shortcutItemNotify" object:shortcutItem.type];}

2、Peek/Pop(預(yù)覽和彈出)

該功能實現(xiàn)分三步,

(1)、遵守協(xié)議 UIViewControllerPreviewingDelegate

(2)、注冊? ? [self registerForPreviewingWithDelegate:self sourceView:self.view];

(3)、實現(xiàn)代理方法:

-(UIViewController *)previewingContext:(id)previewingContext viewControllerForLocation:(CGPoint)location;//Peek預(yù)覽時返回的控制器

- (void)previewingContext:(id)previewingContext commitViewController:(UIViewController *)viewControllerToCommit//再次按壓Pop的控制器

3、HTML鏈接預(yù)覽功能

這個主要是Safari瀏覽器的功,在項目中引入

#import<SafariServices/SafariServices.h>

在需要的地方添加Safari的跳轉(zhuǎn)代碼

SFSafariViewController *sf = [[SFSafariViewController alloc]initWithURL:[NSURL URLWithString:@"http://www.baidu.com"]];

[self.navigationController pushViewController:sf animated:YES];

4、Force Properties(按壓力度)

ios9中添加在UITouch中添加了2個屬性,用于感知手指按下的力度

force : 手指按下的力度

maximumPossibleForce : 最大可能的力度

這里給出一個實際應(yīng)用的范例,根據(jù)按壓的力度去改變view背景色

-(void)touchesMoved:(NSSet*)touches withEvent:(UIEvent *)event{

if (self.traitCollection.forceTouchCapability == UIForceTouchCapabilityAvailable) {

UITouch * touch = touches.anyObject;

NSLog(@"force:%f,maximumPossibleForce:%ff",touch.force,touch.maximumPossibleForce);

self.view.backgroundColor = [UIColor colorWithRed:0.5 green:0.5 blue:touch.force/touch.maximumPossibleForce alpha:1.0];

}}

最后附上Demo地址:3DTouchDemo

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 專著:http://www.itdecent.cn/p/3443a3b27b2d 1.簡單的介紹一下3D Touc...
    violafa閱讀 1,100評論 1 0
  • 前言 關(guān)于這篇文章 由于iPhone 6S發(fā)布不到一年的時間,很多新特性、新技術(shù)還未普遍,不管是3D Touch的...
    Tangentw閱讀 4,744評論 8 18
  • 3D Touch簡介 2015年,蘋果發(fā)布了iOS9以及iphone6s/iphone6s Plus,其中最具有創(chuàng)...
    簡簡蝸牛閱讀 719評論 0 0
  • 3D Touch簡介 2015年,蘋果發(fā)布了iOS9以及iphone6s/iphone6s Plus,其中最具有創(chuàng)...
    愛恨的潮汐閱讀 442評論 0 2
  • 1.簡單的介紹一下3D Touch 3D Touch的觸控技術(shù),被蘋果稱為新一代多點觸控技術(shù)。其實,就是此前在Ap...
    Camille_chen閱讀 12,369評論 19 33

友情鏈接更多精彩內(nèi)容