我有一个问题,我猜,简单的事情。 我有一个(它不是一个SplitViewController)ViewController,里面有一个TableView对象。 我希望当用户单击表格中的一行时,右侧的标签会相应更改。
我的标签(右边的文字“Nome do Vinho”)我想要改变
@property (weak, nonatomic) IBOutlet UILabel *rotuloDetalhesLabel;
我使用此代码填充TableView。 我在viewDidLoad方法上创建对象并放入一个名为“vinhos”的NSArray。
// Create object
Vinho *vinho1 = [Vinho new];
vinho1.rotulo = @"Adega de Borda Premium";
Vinho *vinho2 = [Vinho new];
vinho2.rotulo = @"Adega de Borda Premium 2";
// Populate the NSArray with the objects that I create before
vinhos = [NSArray arrayWithObjects: vinho1, vinho2, nil];
填充TableView
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
// Configura a Cell
static NSString *CellIdentifier = @"TableCell";
TableCell *cell = (TableCell *)[self.tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[TableCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
Vinho *vinho = [vinhos objectAtIndex:indexPath.row];
// rotuloLabel is the Label of the row
cell.rotuloLabel.text = vinho.rotulo;
return cell;
}
我猜它是在didSelectRowAtIndexPath方法上制作的,但我不知道怎么做。 如果我忘记发布一些重要信息,请告诉我。
答案 0 :(得分:0)
您是否要将右侧的标签更改为单元格文本?
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
Vinho *vinho = [vinhos objectAtIndex:indexPath.row];
NSString *cellRotuloText = vinho.rotulo;
rotuloDetalhesLabel.text = cellRotuloText;
}
如果你不像你在评论中所说的那样褪色动画,也许这可以让你开始:xCode ios5: How to fade out a label text after an interval?