哈,我每个人都有一个包含一些值的tabeview单元格。如果用户点击其中一个单元格,则会出现一个带按钮的子视图,并在popoup中有一个名为save的按钮。我需要的是当用户点击保存按钮时它使用单元格的值重定向到保存页面,并将其显示在保存页面的textview中。这是我重定向到保存页面的代码。
-(IBAction)buttonclick{
StatusViewController *detailViewController = [[StatusViewController alloc] initWithNibName:@"StatusViewController" bundle:nil];
detailViewController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentModalViewController:detailViewController animated:YES];
[UIView commitAnimations];
[detailViewController release];}
答案 0 :(得分:3)
将单元格的字符串值存储在类中的NSString值中。
如果需要上次选择的表格视图单元格中的字符串值。从委托方法
获取字符串值NSString *localStringValue;
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
localStringValue = [tableView cellForRowAtIndexPath:indexPath].textLabel.text;
}
在StatusViewController中创建NSString属性。
@interface StatusViewController : UIViewController {
}
@property(nonatomic, retain) NSString *yourStringProperty;
更改您的代码,如下所示,
StatusViewController *detailViewController = [[StatusViewController alloc] initWithNibName:@"StatusViewController" bundle:nil];
detailViewController.yourStringProperty = localStringValue;
在StatusViewController类中,您可以使用访问字符串值
self.yourStringProperty
答案 1 :(得分:1)
使用delegate
概念进行两个类之间的通信。
The Basics of Protocols and Delegates
How do I set up a simple delegate to communicate between two view controllers?
答案 2 :(得分:1)
NSUInteger row = [indexPath row];
NSString value = [listOfItems objectAtIndex:row]; //use this code
StatusViewController *detailViewController = [[StatusViewController alloc] initWithNibName:@"StatusViewController" bundle:nil];
detailViewController.label=value;
detailViewController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentModalViewController:detailViewController animated:YES];
[UIView commitAnimations];
[detailViewController release];
StatusViewController.h文件
NSString *label;
@property (nonatomic, assign) NSString *label;
StatusViewController.m
-(void) viewdidload{
NSLog(@"%@",label);
}