我将数据加载到tableview,如下所示:
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return [tableData count];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return [[[tableData objectAtIndex: section] objectForKey: @"Rows"] count];
}
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {
return [[tableData objectAtIndex: section] objectForKey: @"Title"];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
cell.textLabel.text = [[[tableData objectAtIndex: indexPath.section] objectForKey: @"Rows"] objectAtIndex: indexPath.row];
return cell;
}
我的viewDidLoad
- (void)viewDidLoad {
[super viewDidLoad];
self.tableData = [NSArray arrayWithContentsOfFile: [[NSBundle mainBundle] pathForResource: @"data" ofType: @"plist"]];
}
我使用ARC模式
修改
我的plist:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>Title</key>
<string>Section1</string>
<key>Rows</key>
<array>
<string>Section1 Item1</string>
<string>Section1 Item2</string>
</array>
</dict>
<dict>
<key>Title</key>
<string>Section2</string>
<key>Rows</key>
<array>
<string>Section2 Item1</string>
<string>Section2 Item2</string>
</array>
</dict>
</array>
</plist>
答案 0 :(得分:0)
这个tableData是NSDictionary:
- (void)viewDidLoad {
[super viewDidLoad];
self.tableData = [NSDictionary dictionaryWithContentsOfFile: [[NSBundle mainBundle] pathForResource: @"data" ofType: @"plist"]];
}
使用tableData在tableView中提供值并相应地更改tableViewDelegate和datasource
答案 1 :(得分:0)
首先在didLoad
:
NSString *dataStr = [NSDictionary dictionaryWithContentsOfFile: [[NSBundle mainBundle]
pathForResource: @"data" ofType: @"plist"]];
将其添加到NSDictionary:
NSDictionary *dataDict = [[NSDictionary alloc] initWithContentsOfFile:dataStr];
将字典添加到NSArray:
NSArray *dataArray = [dataDict allKeys]
最后:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
通过执行以下操作填充表格:
NSString *data = [dataArray objectAtIndex:[indexPath row]];
[[cell textLabel] setText:data];