2015-05-11 100 views
0

我有一個static UITableView。我試圖以編程方式將UISegmentedControl添加到第三個單元格。下面是代碼:添加子視圖到靜態UITableViewCell不工作

UISegmentedControl *segment = [[UISegmentedControl alloc] initWithItems:@[@"First", @"Second"]]; 
segment.frame = CGRectMake(0, 0, 50, 30); 

UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:2 inSection:1]]; 
[cell.contentView addSubview:segment]; 

當代碼被調用時,SegmentedControl不添加。

我然後嘗試添加一個UILabel,這也不起作用。

我不能把它放在那個方法,因爲我加入了SegmentedControl當按鈕被選中

回答

1

當你有靜態tableView,可以直接出口連接到它的細胞和操縱喜歡簡單的子視圖。所以只需連接插座並使用您的代碼添加子視圖。它將工作

UPDATE

添加使用下面的代碼子視圖:

[cell addSubview:segment]; 
+0

這是唯一的方法它?我不能以編程方式做到這一點? – Jessica

+0

這是一個簡單的。你甚至可能/加SegmentedControl在故事板廈門國際銀行 – Azat

+0

我更新了我的答案,將子視圖'contentView'是不正確 – Azat

0

移動你的代碼到

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath{ 

} 

然後只是引用cell通過該方法

傳遞
+0

我不能將它放在該方法中,因爲我在選擇'button'時添加'SegmentedControl'。 – Jessica

+0

噢,好的,您應該將其作爲附加信息添加到您的問題中。 – rmp

相關問題