我已经在我的表视图中添加了一个段控件,我需要根据所选的段显示tableview单元格中的文本。
我已经按照一些教程,因为他们根据所选的片段给我标签文字。我也使用了segmentControl.selectedIndexPath
。那么有谁能告诉我如何根据所选的段设置该对象数组到我的tableview单元格?
如果我的英语有任何错误,请纠正我。
请帮帮我。 非常感谢您的帮助。
答案 0 :(得分:2)
首先,您必须根据您的要求将数据划分为不同的数组,即segmentControl的数量。
此处如果有三个段控件,则在表视图的委托方法中创建三个数组,具体取决于段控件的选定索引,更改要在表视图中显示的数组。
如同segmentControl.selectedIndex == 0
那么array1
如果== 1
然后是array2
,如果== 2
那么array3
。
在表视图的所有委托和数据源方法中。在段控件的selecedIndexChange:方法调用重载表。
快乐编码:)
编辑1
对于分段控件索引更改的表格视图中的更改数据,您必须为tableView设置一个IBOutlet
,并使用IBOutlet
使用[tableView reloadData];
更改数据tableView
是IBOutlet
用于表格视图。
快乐编码:)
答案 1 :(得分:1)
tableview的常用用途; 在Controller中你有一个包含对象的数组,比如_tableObjects 您已在控制器中实现了数据源方法
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell =......
.................
cell.labelText.text = [_tableObjects objectAtIndex:indexPath.row].name;
return cell;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return _tableObjects.count;
}
因此,如果是这样,您可以在代码中的某处更改_tableObjects数组。
_tableObjects = myOtherArray;
[self.tableView reloadData];