我有一个UITableView
,我在 UIViewController 上添加了一个带有按钮的单元格。
如果单元格被点击,您将被带到一个viewController
具有选择器的新单元格。
如何将选定单元格的文本设置为下一个 viewController 的标题?
我有一个UITableView
,我在 UIViewController 上添加了一个带有按钮的单元格。
如果单元格被点击,您将被带到一个viewController
具有选择器的新单元格。
如何将选定单元格的文本设置为下一个 viewController 的标题?
IF YOU WANT TO SEND SELECTED ROW's TITLE TO NEXT VIEW CONTROLLER (push)
在新视图控制器的 .h 文件中创建属性(例如标题)以保存所选行的标题并在新视图控制器的 .m 文件中合成标题属性。
更新didSelectRowAtIndexPath
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
YourNewViewController *vc= [[YourNewViewController
alloc]initWithNibName:@"YourNewViewControllerNIB" bundle:nil];
vc.title=[[titleArray objectAtIndexPath]indexPath.row];
[self.navigationController pushViewController:vc animated:YES];
}
现在您已经在新视图控制器中选择了行的标题。
将此标题设置为导航栏标题,将此代码写入viewDidLoad
您的新视图控制器。
self.navigationItem.title=标题。
如果您想将选定行的标题发送到上一个视图控制器 (POP)
为此,您必须使用委托模式,并且必须制定自定义协议。
按照这个。- 在视图控制器之间传递数据
// 这是获取选定单元格的方法
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:[tableView indexPathForSelectedRow]];
cell.textLabel.text = @"Some title";
在didSelectRowAtIndexpath
方法中
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *Cell = [tableView cellForRowAtIndexPath:indexPath];
NSString *NewTitle = @"Add your new title here";
在按钮的方法或选择器的方法中编写此代码
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:[tableView indexPathForSelectedRow]];
cell.textLabel.text = self.MyButtonName.titleLabel.text;
[self.tableView reloadData];
您在寻找选定的行吗?
- (void)tableView:(UITableView *)_tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [_tableView cellForRowAtIndexPath:indexPath];
[cell.textLabel setText:@"Your Title"];
[_tableView reloadData];
}