使用tableview更改视图中的标签

时间:2012-10-20 20:44:50

标签: objective-c ios delegates datasource tableview

首先请看这个screenshot。我想要做的是当我点击右边小桌面视图中的一个单元格时。然后标签应该更改为其他一些数据。我正在为我的数据源和委托使用自定义控制器。我在viewDidLoad中设置控制器。

- (void)viewDidLoad
{

    tabelPlayers=[[tblPlayersDataSourceDelegate alloc]init];
    tblPlayers.dataSource=tabelPlayers;
    tblPlayers.delegate=tabelPlayers;
    [tabelPlayers setTableSource:_playersArray];
}

在这个tblPlayersDataSourceDelegate中,我为didSelectCellAtIndexPath执行此操作

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
  Team *player = [_tableSource objectAtIndex:indexPath.row];
    PlayerDetailController *detail = [[PlayerDetailController alloc]init];
    [detail setStrNaam:player.name];
    [detail reloadInputViews];
}

但它没有改变任何东西。有人可以帮帮我吗?

提前致谢

1 个答案:

答案 0 :(得分:0)

如果我理解你的问题,那么你要做的就是根据右边小桌子视图中所选的玩家来改变左边标签上的信息。

我并不完全理解你的代码,但是作为一般结构我会做什么来达到你想要的结果相同的结果:

  1. 创建一个包含“Items”(内部NSDictionary)的NSDictionary(可以在* .plist文件中)。
  2. 每个“项目”包含密钥(玩家年龄,玩家编号或其他)。
  3. 右边的小表将使用另一个NSArray,它将从主NSArray键构建:

    NamesArray = [mainPlayersDictionary allKeys];
    

    只要在小型tableview中选择了一行,您只需根据主NSDictionary中的键加载所有标签:

    [ageLabel setText: [[mainPlayersDictionary objectAtIndex:selectedRowIndex] objectForKey:plAge];
    [pNumLable setText:[[mainPlayersDictionary objectAtIndex:selectedRowIndex] objectForKey:pNum];
    

    你的套装。希望有所帮助。