如何将一个选定的数组从一个uitable传递到另一个uitable

时间:2011-08-01 07:38:24

标签: iphone ios xcode

任何人都可以指导我如何做这样的事情:

enter image description here

我成功完成了第一次和第一次在最后一个屏幕上,我需要在它们之间插入另一个屏幕。

我可以学习任何教程吗?

非常感谢:)。

3 个答案:

答案 0 :(得分:2)

使用uitableview创建一个uinavigationcontroller可以帮助您实现目标。

有很多教程。快速谷歌搜索让我this。基本上,您可以使用单个导航控制器和单个uitableviewcontroller类,并创建向其添加项目。如果您无法掌握该教程中的概念,请在此处添加注释以了解您所处的位置。我会尝试相应地编辑这篇文章。

答案 1 :(得分:1)

您需要的基本上是NSMutableArray NSMutableArray

例如。

obj1,obj2,obj3 ... nil是dict。在您的示例中

NSMutableArray *middleScreenElement1 = [NSMutableArray arrayWithObjects:obj1,obj2,obj3...,nil];

NSMutableArray *middleScreenElement2 = [NSMutableArray arrayWithObjects:obj1,obj2,obj3...,nil];

NSMutableArray *middleScreenElement3 = [NSMutableArray arrayWithObjects:obj1,obj2,obj3...,nil];

NSMutableArray *firstScreen = [NSMutableArray arrayWithObjects:middleScreenElement1,middleScreenElement2,middleScreenElement3];

在第一个TableView中,添加以下方法..

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
   NSMutableArray *middleScreenArray = (NSMutableArray*)[firstScreen objectAtIndex:indexPath.row];
    NextTableViewController *nTVC = [NextTableViewController alloc]initWithArray:middleScreenArray];
}

现在您可以使用数组填充表格视图,就像中间屏幕一样。

**请注意,您必须在middleScreenViewController中创建一个initWithArray:(NSMutableArray*)array方法

希望它有所帮助.. :)

答案 2 :(得分:1)

屏幕1中的

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
 {
    Screen2 *screen2 = [[Screen2 alloc]initWithNibName:.......];
    screen2.itsArray = [[NSMutableArray alloc] init];       
    if(indexPath.row == 1)
       {
         screen2.itsArray = yourArrayForScreen2_FirstRow;
       }
    else if(indexPath.row == 2){
         screen2.itsArray = yourArrayForScreen2_SecondRow;
      }else{ ...... }
   [self.viewController pushViewCOntroller .....];
 }
屏幕2中的

: NSMutableArray * itsArray; @property和@snynthesize

现在根据需要使用itsArray。在screen2中,与屏幕1中的屏幕3相同。