0

デリゲートにデータを返すことについての私の理解は、新しいView Controllerを作成し、それをプロトコルに準拠させることを中心に完全に展開されます。

UIDatePickerModeCountDownTimerモードで設定されたUIDatePickerから時間入力を取り戻そうとしていますが、問題が発生しています。

Main1.m内で、UIActionSheet * actionを作成し、クリックするとUIDatePickerが表示されるようにすべてを設定します。Main.mの内部私も言います:

main.delegate = self;

これがUIActionSheetでない場合は、新しいViewController内でプロトコル参照を作成し、Mainが持つメソッドに新しいvcパスデータを取得しますが、UIActionSheetではそれを実行できません。

私は何が欠けていますか?アクションシートには本質的に違うものがあると思いますが、理解できません。

ご協力いただきありがとうございます!!!

編集:

ごめん!ビューコントローラに一般的な名前を付けていました。実際にはMain.mではなく、FirstViewController.h / m

私の一般的な参照が、vcとは完全に異なるMain.mファイルと混同されていることに気づきませんでした。

4

1 に答える 1

0

デリゲートの割り当てを Main.m に入れている理由がよくわかりません。ViewController で UIActionSheet を設定し、そこから起動していると仮定します。この場合、ViewController はデリゲート オブジェクトです。したがって、ViewController が UIActionSheetDelegate を実装していることを確認する必要があります。すなわち:

@interface SomeController : UIViewController <UIActionSheetDelegate> 

次に、そのデリゲートの必要なメソッドをビュー コントローラー クラスに実装するだけで、それが実行されます。これをどのように実装しているかについて何か不足している場合は、調査するコード例をさらに提供する必要があります。

于 2010-09-15T19:00:48.113 に答える