通过表格单元格按钮将单元格名称传递到另一个视图

时间:2012-12-03 02:48:05

标签: ios xcode uitableview button

好吧,所以我想将一个视图控制器中表格单元格中包含的名称传递给另一个视图控制器中的数组。我想通过第一个表的单元格中包含的按钮来执行此操作。

以下是表格单元格的描述:

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{

static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

// add "add" button
UIButton *addFriendButton = [UIButton buttonWithType:UIButtonTypeContactAdd];
addFriendButton.frame = CGRectMake(250.0f, 5.0f, 75.0f, 30.0f);

[cell addSubview:addFriendButton];

[addFriendButton addTarget:self
                    action:@selector(addFriend:)
                    forControlEvents:UIControlEventTouchUpInside];

if(!cell)
{
    cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}

cell.textLabel.text = [array objectAtIndex:indexPath.row];
return cell;

}

以下是按钮方法的描述:

- (IBAction)addFriend:(id)sender
{
    NSLog(@"Add friend.");



}

第一个视图控制器的名称 - 执行传递的名称 - 称为ViewController - 第二个视图控制器 - 接收传递的信息的名称 - 称为MyMealViewController。我想要传递信息的数组称为myMenuArray。

我认为这基本上都是所有相关信息。如果您需要我提供任何其他信息 - 或者您需要澄清我要问的问题 - 让我的问题回答,请告诉我!

1 个答案:

答案 0 :(得分:0)

您可以使用

cell.textLabel.text = [array objectAtIndex:indexPath.row];

[[addFriendButton addTarget:self
                        action:@selector(addFriend:) toTarget:self      withObject:cell.textLabel.text]
forControlEvents:UIControlEventTouchUpInside];

- (void)addFriend:(NSString *)theFriendName 
{
   NSLog(@"Add friend.");
// Now here you make the instance of the new ViewController and you set the text you are     adding.
MyViewController *theVC = [MyViewController alloc] initWithNibName:@"MyViewController"     bundle:nil];
[theVC setNewFriend:theFriendName];
[self presentModalViewController:theVC animated:YES];

}