我是iOS开发的新手。我正在构建一个项目,我希望将视图控制器的文本字段的文本显示到另一个viewcontroller的表视图单元格的标签。任何人都可以告诉我如何做到这一点的逻辑吗?
答案 0 :(得分:1)
由于您还没有发布任何代码,我会尝试向您解释。
您必须为按钮创建事件,然后您可以执行[self performSegueWithIdentifier:@"yourSegue" sender:self];
接下来就是在你的新ViewController中创建一个接受你的值的属性。
之后,在prepareForSegue
NSString *text = [self.textField text];
segue.destinationViewController;
,- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if(segue.identifier isEqualToString:@"yourSegue"])
{
YourViewController *vc = segue.destinationViewController;
vc.accpetValue = [self.yourTextField text];
}
}
,从- (IBAction)yourButton_pressed:(id)sender
{
[self performSegueWithIdentifier:@"yourSegue" sender:self];
}
获取新的VC并在那里分配您的价值。
所以,最后你会得到:
if(self.yourTextBox && [self.yourTextBox text] && ![[self.yourTextBox text] isEqualToString:@""])
{
cell.textLabel.text = [self.yourTextBox text];
}
else
{
//something else
}
并按下按钮的操作:
[self.tableView reloadData];
如果你有tableViewController,并且你想将这个值分配给同一屏幕上的单元格,在按钮上你可以用与上面相同的方式获得值,在你的cellAtIndexPath中你可以执行以下操作:
{{1}}
您可以按下按钮事件
{{1}}
希望它有所帮助。
答案 1 :(得分:0)
如果带有单元格的视图控制器从带有文本字段的视图控制器打开,则非常简单。
您可以在第二个视图控制器.h中创建属性NSString,然后在从第一个视图控制器打开它时可以调用它。
SecondViewController * cotroller = [[SecondViewController alloc]init];
controller.string = [textField text];
[self presentViewController:controller animated:YES completion:^{
}]