iOS 6.1 に付属するデフォルトの MobileSMS アプリで SMS を送信するための微調整を作成しています。「送信」ボタンにフックすることはできましたが、ユーザーに通知するためのポップアップを作成できませUIAlertView
んUIViewController
。問題は、CTMmsEncoder
私がフックしているクラスに何らかの方法でオーバーライドするビュー コントローラーがないことだと思います。
私の質問は、このような状況でビューを表示できる方法があるかどうかです。微調整のために多くのソースコードを調べましたが、同様のケースが見つかりません。私はdylibを作成し、そこからUIViewControllerをロードしようとしましたが、(予想される)エラーが発生しました:
Oct 25 14:37:59 Pudge SpringBoard[950] <Warning>: Warning: Attempt to present <ModalViewController: 0x1dbbe1a0> on <KSMSDylibViewOne: 0x1db7da50> whose view is not in the window hierarchy!
ViewController を持つクラスを微調整 (クラス ModalViewController など) で直接実装しようとすると、Theos は明らかにエラーを出力します。
Tweak.xm:12:6: error: instance method 'presentViewController:animated:completion:' is being used on 'Class' which is not in the root class
[-Werror,-Wobjc-method-access]
[self presentViewController:view animated:YES completion:nil];
~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
これを乗り越える方法はありますか、それとも再設計する必要がありますか?
前もって感謝します、
パナギオティス。