私はオブジェクトのコレクションでuitableviewを運びます。 そして、私はUITableViewCellをクリックすると別のUIViewを開きます。 しかし、私は、この新しいUIViewのためのUITableViewCellにあるオブジェクトを送信し、その詳細を表示したいと思っていました。 は、私は別のビューをロードするには、この質問に答えるために続く:ViewController Segue Xamarin 私は誰かが先コントローラのパラメータを設定するためにあなたのViewControllerでsegueを使ってオブジェクトを渡す方法
答えて
オーバーライドPrepareForSegueを助ける場合に非常に感謝しています。あなたはパラメータを渡すことができるように移動先のコントローラ上のパブリックメソッドやプロパティを定義する必要があります。差出人:)方法:
いくつかのソリューションがありますpublic override void PrepareForSegue (UIStoryboardSegue segue, NSObject sender)
{
if (segue.Identifier == "TaskSegue") { // set in Storyboard
var navctlr = segue.DestinationViewController as TaskDetailViewController;
if (navctlr != null) {
// some public method you create in your destination controller
navctlr.SetTask (this, item);
}
}
}
説明 このメソッドの既定の実装では何も行われません。 は、Segueのコンテキストに基づいて、関連するデータを新しいView Controllerまたは ウィンドウコントローラに渡すために、このデータをオーバーライドできます。セグオブジェクト は遷移を記述しており、セグの両方に関与する両方のコントローラ への参照を含みます。
Segueは複数のソースからトリガーされる可能性があるので、segueパラメータとsenderパラメータに という情報を使用して、アプリ内の異なる 論理パスを曖昧にする必要があります。たとえば、セグが テーブルビューから発生した場合、送信者パラメータは、ユーザ がクリックしたセルを識別します。その情報を使用して デスティネーションビューコントローラのデータを設定することができます。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { self.currentObjectToPass = .. some object from array or somewhere else.. }
そして次のVCに設定します:あなたはdidSelectRowに渡したい物を "保存" する必要がTHI場合
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(UIButton*)sender {
if ([segue.identifier isEqualToString:@"bookingDetailsSegue"]) {
self.nextVC = segue.destinationViewController;
self.nextVC.objectToPass = self.currentObjectToPass;
}
}
他の方法seguesの使用を拒否し、storyboardIDでvcを取得することです。
あなたは instantiateViewController(withIdentifier :)メソッド必要がある。この方法:
戻り値指定 識別子列に対応するビューコントローラを。表示コントローラが 文字列に関連付けられていない場合、このメソッドは例外をスローします。
説明このメソッドを使用して、 アプリケーション内でプログラムで操作して表示する、 のView Controllerオブジェクトを作成します。このメソッドを使用してビュー コントローラを取得する前に、Interface Builderで適切な識別子 文字列を明示的にタグ付けする必要があります。
このメソッドは、呼び出すたびに指定されたビューコントローラ の新しいインスタンスを作成します。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { self.nextVC = [self.storyboard instantiateViewControllerWithIdentifier:@"nextVCID"]; self.nextVC.objectToPass = = .. some object from array or somewhere else.. [self.navigationController pushViewController:self.nextVC animated:YES]; }
をそして、ここではIBでVC識別子(ストーリーボードID)を設定することを忘れないでください:
次に、あなたのコードは次のようになります
- 1. ストーリーボードを通じてオブジェクトを渡すSegue
- 2. Segueの準備を使用してFirebase UIDを渡す方法
- 3. URLを使ってオブジェクト値でパラメータを渡す方法
- 4. POSTを使ってjavascriptオブジェクト配列をPHPに渡す方法
- 5. segueメソッドを使用してURLをWebビューに渡す方法は?
- 6. segueを使用して2つのテキストフィールドエントリを別のViewControllerに渡す方法
- 7. Swift Segueを使用してView Controllerにデータを渡す方法は?
- 8. segueを使って構造体配列から値を渡す:index of range
- 9. 整数をSegueに渡す
- 10. vueを使ってselect内のメソッドにオブジェクトを渡す方法は?
- 11. rails 3.1.0で名前付きパスを使ってオブジェクトを渡す方法は?
- 12. jsonオブジェクトをjquery ajaxを使って正しくフラスコサーバーに渡す方法
- 13. オブジェクトとActionEventをh:commandbuttonによって渡す方法actionListener?
- 14. IDLを使用してオブジェクトとしてパラメータを渡す方法
- 15. Segueを使用してSwiftでViewController間でデータを渡す
- 16. 内部オブジェクトを使ってオブジェクトを構築する方法
- 17. Prismを使用してオブジェクトをWPFクラスライブラリに渡す方法
- 18. Wepay APIでPHPを使用してjsonオブジェクトを渡す方法
- 19. Zend_Logを使ってメッセージを配列として渡す方法
- 20. オートコンプリートを使ってカスタムコンストラクタを使ってオブジェクトをダイナミックオブジェクトからマップする方法
- 21. 方法渡っ変数/オブジェクトの使用 - Javaの
- 22. 渡す文字列Segue Swift
- 23. ngForディレクティブを使用して親オブジェクトに子オブジェクトIDを渡す方法
- 24. SOLRでORを使って複数のfqを渡す方法
- 25. thymeleafを使ってブートストラップのデータに値を渡す方法は?
- 26. wifiを使ってインテントを渡す方法P2P android
- 27. このコードを使ってファイル/イメージを渡す方法
- 28. アポストロフィを使って何かをjsonに渡す方法
- 29. ajaxを使って変数をブレードに渡す方法Laravel
- 30. パーセルブルを使ってDrawableを渡す方法
してみます。https:/ /developer.xamarin.com/api/member/UIKit.UIViewController.PrepareForSegue/ – brandonscript