私はXamarin iOSプロジェクトを行っています。私は、ボタンをクリックして、選択されたセルにリンクされた情報を表示すると、行を選択することができませんでした。このよう :Xamarin iOSの詳細をUITableviewから表示
私はボタンをクリックしたときに、第2に、第1のコントローラからのデータを渡す方法がわかりません。どうやってやるの ?ここで
は私TableDataSourceです:
ここprivate const string cellIdentifier = "ProductCell";
private ProductListViewController _controller;
private List<Product> _products;
public override UITableViewCell GetCell(UITableView tableView, NSIndexPath indexPath)
{
ProductCell cell = (ProductCell)tableView.DequeueReusableCell(cellIdentifier);
if (cell == null)
cell = new ProductCell(new NSString(cellIdentifier));
var record = _products[(int)indexPath.Row];
cell.UpdateCell(record.Image, indexPath.Row);
cell.Tag = indexPath.Row;
return cell;
}
が私の製品カスタムセルである:
public partial class ProductCell : UITableViewCell
{
public static readonly NSString Key = new NSString("ProductCell");
public ProductCell(IntPtr handle) : base(handle)
{
}
public ProductCell(NSString cellId)
{
}
public void UpdateCell(string imageName, nint tag)
{
this.ProductImage.Image = UIImage.FromBundle(imageName);
this.MoreBtn.Tag = tag;
}
}
編集:ここでは は、ナビゲーションのために私のコードですが、私はアクションボタンの方法でそれを配置します。しかし、今、私はどこにこのメソッドを作成するか分からないために:
var storyboard = UIStoryboard.FromName("Main", null);
var controller = storyboard.InstantiateViewController("ProductDetailViewController") as ProductDetailViewController;
// Here I Will pass the data to the controller
_controller.NavigationController.PushViewController(controller, true);
ですViewController1(製品)からViewController2(製品の詳細)へのナビゲーション – apineda
@apinedaもしあなたがそれを見たいなら、私はコードを追加しました。それはあなたが既にのViewControllerのインスタンスを持っている – fandro
くださいについてあなたはどう思いますか教えてくださいここ 'VARコントローラ= storyboard.InstantiateViewController ProductDetailViewControllerとして(「ProductDetailViewController」);' はそうあなたがパブリックプロパティに任意の値を割り当てたり、作成することができますあなたが値を渡してViewController内で代入を行うことができるパブリックメソッドです。 – apineda