簡體   English   中英

當我選擇單元格時如何向另一個視圖控制器發送一些值?

[英]How to send some value to another view controller when i select cell?

我有兩個視圖控制器: MainScreenViewControllerTargetScreenViewController

MainScreenViewController我具有帶有自定義單元格的UITableView ;在TargetScreenViewController我具有需要更改的標簽。

我需要獲取一些值,例如索引路徑,並將其傳遞給TargetScreenViewController並根據該值更改標簽。

我已經在單元格中的觸發的Segues中設置了推送Segue,但是如何傳遞一些值並將其傳遞到那里?

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{

    TargetView *target = [[TargetView alloc]initWithNibName:@"TargetView" bundle:nil];

    NSString *data = @"Success";

    target.incomingData = data;

}

在Tar​​getView中:

- (void)viewDidLoad
{
    [super viewDidLoad];

    self.mLabel.text = self.incomingData;
}

但標簽為空= [

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    Class *yourObject=[self.arr objectAtIndex:indexPath.row];

    TargetView *vc=[[TargetView alloc] initWithNibName:@"TargetView" bundle:nil];

    vc.object=yourObject; //Create a p

    [self.navigationController pushViewController:vc animated:YES];

}

在您的TargetView中

-(void)viewDidLoad{

   self.lbl.text=self.object.value;

}

您可以發出通知,也可以通過對象發布通知。 您需要發送給第二個控制器的對象。

嘗試這個 .....

1.在目標視圖控制器中創建一個屬性。

2。

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
      targetviewcontroller * obj = create object here .
      obj.property = dataToBeSent ;

      ---------------
}

然后您將通過訪問屬性來獲取數據

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM