我有一個UITableView
20行。在每一行中,添加了兩個UIButton
,所以完全有40個按鈕。我如何訪問每個單元格中的每個按鈕?所有這些UIButton
有兩個tag
的1和2如何訪問UITableViewCell中的UIButton或UILabel?
例如:我想寫一個方法來改變的2個按鈕的背景顏色在一個特定的行:
-(void)changeColor:(int)row{
//code here
}
你有什麼建議?
-(UITableViewCell *)tableView:(UITableView *)tv cellForRowAtIndexPath:(NSIndexPath *)indexPath{
UITableViewCell *cell = [tv dequeueReusableCellWithIdentifier:@"Cell"];
if (cell == nil){
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:@"Cell"] autorelease];
UIButton *button1=[[UIButton alloc] initWithFrame:CGRectMake(x1,y1,w1,h1)];
UIButton *button2=[[UIButton alloc] initWithFrame:CGRectMake(x2,y2,w2,h2)];
[button1 setTag:1];
[button2 setTag:2];
[[cell contentView] addSubview:button0 ];
[[cell contentView] addSubview:button1 ];
[button0 release];
[button1 release];
}
UIButton *button1 = (UIButton *)[cell viewWithTag:1];
UIButton *button2 = (UIButton *)[cell viewWithTag:2];
return cell;
}
你需要在哪裏抓取按鈕的引用?你試過這個嗎? '[cell.contentView viewWithTag:1];' –
請注意,您可以有20行數據,但可能沒有20個唯一的單元格,具體取決於一次顯示多少個單元格。這是'dequeueReusableCellWithIdentifier:'操作的一部分。 –