同じViewControllerの3DTouchクイックアクション

マルコ

ViewController私のアプリケーションのエントリは、2つのボタンで構成されています:weightageメインではViewController、これはweightボタンをクリックしたときに実行されるコードです

@IBAction func weightSearch(_ sender: Any) {
//Weight button clicked
inputReset()
userInput.keyboardType = UIKeyboardType.numberPad
userInput.becomeFirstResponder()
}

そして、これはageボタンをクリックしたときに実行されるコードです

@IBAction func ageSearch(_ sender: Any) {
    //Age button clicked
    inputReset()
    userInput.inputView = agePicker
    userInput.becomeFirstResponder()
}

私は何をしようとしていることは2つの3Dタッチ迅速な行動、と呼ばれる1実装であるWeight Search(のためのコードを実行されるfunc weightSearch)と呼ばれる他のAge Search(ためのコードを実行するがfunc ageSearch)。これが私がこれまでにしたことです:

  1. このInfo.plistファイルでUIApplicationShortcutItemsは、2つItemsのタイプの辞書とそれぞれのUIApplicationShortcutItemTitleおよびを含む配列を作成しましたUIApplicationShortcutItemType
  2. 私のAppDelegate.swiftファイルには、予備のクイックアクションコードを追加しました。

    func application(_ application: UIApplication, performActionFor shortcutItem: UIApplicationShortcutItem, completionHandler: @escaping (Bool) -> Void) {
    //3D touch features 
    }
    

今の私の問題は、自分のAppDelegate.swiftファイルにどのコードを書くべきかわからないということです。私が見たすべてのチュートリアルとこのサイトのすべての同様の質問ViewControllerは、同じ `ViewControllerで異なる関数を呼び出すのではなく、クイックアクションを使用して異なるもの呼び出すことを扱っています。前もって感謝します。

ケインチェシャー

iOSはAppDelegate、ユーザーがクイックアクションを選択したことを通知しているため、自由に好きなことを行うことができます。あなたへの参照を取得するには、(これがあなたになりますViewController要求することができますそうすれば、必要なことを自由に行うことができます。windowrootViewControllerViewController

func application(_ application: UIApplication, performActionFor shortcutItem: UIApplicationShortcutItem, completionHandler: @escaping (Bool) -> Void) {
  guard let viewController = window?.rootViewController as? ViewController else { return }
  viewController.performSomeAction()
}

また、将来的に別のタイプのView Controllerをルートとして使用するように変更した場合、デバッグモードで実行すると、これを少し将来にわたって保証してクラッシュする可能性があります。

func application(_ application: UIApplication, performActionFor shortcutItem: UIApplicationShortcutItem, completionHandler: @escaping (Bool) -> Void) {
  guard let viewController = window?.rootViewController as? ViewController else { 
  assertionFailure("Wrong view controller type!") // This only crashes in debug mode
  return 
}
  viewController.performSomeAction()
}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

SpriteKitで3DTouchクイックアクションが正しく機能しない

分類Dev

ストーリーボードのピークアンドポップで3DTouchを使用する

分類Dev

ホーム画面の3DTouchショートカットアイテムのアイコンの適切なサイズはどれくらいですか?

分類Dev

予期しないクラッシュが原因で、3DTouchのショートカットが機能しない

分類Dev

同じアクションでViewControllerをポップおよびプッシュする

分類Dev

Rails-同じアクション(インデックス)からの複数のビュー(管理者、通常)

分類Dev

ViewController間で異なるtableViewsに同じアクションを与える方法[swift]

分類Dev

コントローラの同じタイプのアクションフィルタとそのアクションメソッド

分類Dev

Vuepressアプリケーション外の同じドメインリンク

分類Dev

カウントに応じたUIButton同時クリックアクション

分類Dev

同じイベントに対して複数のターゲットアクションを持つUIButton

分類Dev

PHPの「ヘッダー」はHTMLの「アクション」と同じですか?

分類Dev

SWRevealViewControllerと3DTouchのquickActions

分類Dev

バグ 3DTouch キーボード テキスト選択 [_NSActivityAssertion setCursorPosition:]: インスタンスに送信された認識されないセレクター

分類Dev

ボタンとナビゲーションアイテムの同じアクション

分類Dev

ほぼ同じアクションのC#ボタン

分類Dev

Javascriptを使用してSafariでiPhoneの新しい3Dtouchにアクセスするにはどうすればよいですか?

分類Dev

3DTouchを使用して新しいiPadで画像やリンクがドラッグされないようにする

分類Dev

同じアクションRailsの2つのルート

分類Dev

アクションパックリクエストサイクル内のRails接続プール同じ接続

分類Dev

ASP.NET CoreFromFormとFromBodyの同じアクション

分類Dev

複数のルートが同じアクション.NETCore 3.1

分類Dev

同じコレクションの挿入と更新の間のMongoアトミック性

分類Dev

異なる「パス」にある同じ名前の消防署コレクションのインデックス

分類Dev

複数のスレッドが同じコレクションにアクセスする場合のConcurrentModificationException

分類Dev

同じデバイス内のAndroidクライアントサーバーアプリケーション

分類Dev

Redux Observable:複数のアクションに対して同じエピックを発射します

分類Dev

複数のIDに同じJavaScriptアクションを使用すると、インデックス番号のみが異なります

分類Dev

クイックアクションの可用性の確認

Related 関連記事

  1. 1

    SpriteKitで3DTouchクイックアクションが正しく機能しない

  2. 2

    ストーリーボードのピークアンドポップで3DTouchを使用する

  3. 3

    ホーム画面の3DTouchショートカットアイテムのアイコンの適切なサイズはどれくらいですか?

  4. 4

    予期しないクラッシュが原因で、3DTouchのショートカットが機能しない

  5. 5

    同じアクションでViewControllerをポップおよびプッシュする

  6. 6

    Rails-同じアクション(インデックス)からの複数のビュー(管理者、通常)

  7. 7

    ViewController間で異なるtableViewsに同じアクションを与える方法[swift]

  8. 8

    コントローラの同じタイプのアクションフィルタとそのアクションメソッド

  9. 9

    Vuepressアプリケーション外の同じドメインリンク

  10. 10

    カウントに応じたUIButton同時クリックアクション

  11. 11

    同じイベントに対して複数のターゲットアクションを持つUIButton

  12. 12

    PHPの「ヘッダー」はHTMLの「アクション」と同じですか?

  13. 13

    SWRevealViewControllerと3DTouchのquickActions

  14. 14

    バグ 3DTouch キーボード テキスト選択 [_NSActivityAssertion setCursorPosition:]: インスタンスに送信された認識されないセレクター

  15. 15

    ボタンとナビゲーションアイテムの同じアクション

  16. 16

    ほぼ同じアクションのC#ボタン

  17. 17

    Javascriptを使用してSafariでiPhoneの新しい3Dtouchにアクセスするにはどうすればよいですか?

  18. 18

    3DTouchを使用して新しいiPadで画像やリンクがドラッグされないようにする

  19. 19

    同じアクションRailsの2つのルート

  20. 20

    アクションパックリクエストサイクル内のRails接続プール同じ接続

  21. 21

    ASP.NET CoreFromFormとFromBodyの同じアクション

  22. 22

    複数のルートが同じアクション.NETCore 3.1

  23. 23

    同じコレクションの挿入と更新の間のMongoアトミック性

  24. 24

    異なる「パス」にある同じ名前の消防署コレクションのインデックス

  25. 25

    複数のスレッドが同じコレクションにアクセスする場合のConcurrentModificationException

  26. 26

    同じデバイス内のAndroidクライアントサーバーアプリケーション

  27. 27

    Redux Observable:複数のアクションに対して同じエピックを発射します

  28. 28

    複数のIDに同じJavaScriptアクションを使用すると、インデックス番号のみが異なります

  29. 29

    クイックアクションの可用性の確認

ホットタグ

アーカイブ