Bra*_*nch 6 objective-c ios quickaction 3dtouch
所以我想要一个非常基本的3D触摸设置.在我的主UI上,我有一个2选项分段控件,我基本上想要在使用3DQuickActionA时打开时选择一个选项,而使用3DTouchQuickActionB则选择另一个选项.
我查看了本网站上的其他问题,建议我使用:
- (void)handleShortCutItem:(UIApplicationShortcutItem *)shortcutItem {
if([shortcutItem.type isEqualToString:@"3DQuickActionA"]){
self.quote_opt.selectedSegmentIndex = 0; }
if([shortcutItem.type isEqualToString:@"3DQuickActionB"]){
self.quote_opt.selectedSegmentIndex = 1; }
}
Run Code Online (Sandbox Code Playgroud)
其中quote_opt是我的分段控件的名称.
但是,这不起作用.我的应用程序启动正常,但只是将quote_opt的最后一个值作为当前选项 - 3D触摸操作不执行任何操作.我确定我错过了什么,但我不知道是什么.是否需要在viewdidload中进行某些操作?
任何建议都将不胜感激,我很乐意发布任何代码的其他部分/回答解决问题所需的任何其他问题.
谢谢!
您还需要检查launchOptions一下didFinishLaunchingWithOptions。
因此,作为正在进行的聊天的结果,这是最新的代码:
应用程序代理
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[FIRApp configure];
if(launchOptions)
{
UIApplicationShortcutItem *selectedItem = [launchOptions objectForKey:UIApplicationLaunchOptionsShortcutItemKey];
if(selectedItem)
{
[self applyShortcutItem:selectedItem];
}
}
return YES;
}
- (void)application:(UIApplication *)application performActionForShortcutItem:(UIApplicationShortcutItem *)shortcutItem completionHandler:(void (^)(BOOL))completionHandler
{
[self applyShortcutItem:shortcutItem];
}
- (void)applyShortcutItem:(UIApplicationShortcutItem *)shortcutItem
{
ViewController *rootViewController = (ViewController *)[self.window rootViewController];
if([shortcutItem.type isEqualToString:@"DogModeShortcut"])
{
[rootViewController setShortcutAction:LaunchDogMode];
}
else if([shortcutItem.type isEqualToString:@"CatModeShortcut"])
{
[rootViewController setShortcutAction:LaunchCatMode];
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
163 次 |
| 最近记录: |