我有一个 NSMutableArray 显示为
(
13002,
My Drive,
13006,
Testing1,
13007,
Testing123
)
在我的 NSLog
我想用名称(我的驱动器、测试 1 和测试 123)填充我的 UITableView,并希望使用 ID 作为字幕。
我有一个 NSMutableArray 显示为
(
13002,
My Drive,
13006,
Testing1,
13007,
Testing123
)
在我的 NSLog
我想用名称(我的驱动器、测试 1 和测试 123)填充我的 UITableView,并希望使用 ID 作为字幕。
NSmutableArray *element; //contains your array
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
static NSString *cellIdentifier = @"MyCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:cellIdentifier];
element = [array objectAtIndex:indexPath.row];
cell.textLabel.text = element;
element = [array objectAtIndex:indexPath.row +1 ];
cell.subtitle.text = element;
您还应该考虑使用免费的 Sensible TableView 框架。您只需将数组传递给框架,它就会自动将其显示在表格视图中。
在 indexpath 方法和行数方法中使用单元格作为行,如下所示
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return array.count/2;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
int row = [indexPath row]*2;
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease];
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
cell.textLabel.font = [UIFont boldSystemFontOfSize:14];
}
cell.textLabel.text = [array objectAtIndex:row+1];
cell.detailTextLabel.text = [array objectAtIndex:row];
return cell;
}
你的问题会解决...
根据您的应用程序,您可能需要考虑使用 NSMutableDictionary 而不是数组。这样,您的数据模型将准确地表示这些名称映射到 id 的事实。您可以使用
NSArray *arrayOf Keys = [theDictionary allKeys];
获取字典中的键数组,然后执行以下操作:
cell.textLabel.text = [theDictionary objectForKey:[arrayOfKeys objectAtIndex:indexPath.row]];
cell.detailtextLabel.text = [arrayOfKeys objectAtIndex:indexPath.row];