当我选择单元格时,如何将一些值发送到另一个视图控制器?

时间:2013-11-07 09:36:32

标签: ios objective-c uistoryboardsegue

我有两个视图控制器:MainScreenViewControllerTargetScreenViewController;

MainScreenViewController UITableView我有TargetScreenViewController自定义单元格,在TargetScreenViewController我有需要更改的标签。

我需要获取一些值,例如索引路径,并将其传递给-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ TargetView *target = [[TargetView alloc]initWithNibName:@"TargetView" bundle:nil]; NSString *data = @"Success"; target.incomingData = data; } 并根据该值更改标签。

我已经在单元格中的Triggered Segues中设置了push segue,但是我如何传递一些值并将其传递到那里?

- (void)viewDidLoad
{
    [super viewDidLoad];

    self.mLabel.text = self.incomingData;
}
在Tar​​getView中

{{1}}

但标签为空= [

3 个答案:

答案 0 :(得分:0)

- (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 :(得分:0)

您可以使用对象发出通知并发布通知。您需要发送给第二个控制器的对象。

答案 2 :(得分:0)

试试这个......

1.在目标视图控制器中创建一个属性。

2

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

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

然后您将通过访问属性

获取数据