首先,我需要计算数组中的项目。
<dict>
<key>New item</key>
<array>
<string>apple</string>
<string>orange</string>
</array>
</dict>
第二步,将项目加载到tableview.example,将表格单元格1加载到apple,将表格单元格2加载到橙色 第三,通过数组中的计数项在表格单元格中创建按钮 第四步,按项目值设置按钮标题。例如,按钮“apple”和按钮“orange”。
我应该从哪里开始?
答案 0 :(得分:2)
首先创建一个将成为UITableView数据源的保留属性。
<。>文件中的
@property (strong, nonatomic) NSArray *dataSource; //use retain instead of strong if not using ARC
接下来,将数组从字典中提取到数据源中
self.dataSource = [dict objectForKey:@"New item"]; //only if it's guaranteed that the dictionary contains that array
接下来用两种方法实现表视图的数据源协议:
- (NSInteger)tableViewNumberOfRowsInSection:(UITableView *)tableView {
return dataSource.count; // create cells by count of array
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath)indexPath {
static NSString *reuseIdentifier = @"fruit";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:identifier];
if (!cell) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:reuseIdentifier]; // add autorelease if not using ARC
//add your UIButton here, give it tag
UIButton *button = ...;//alloc the button and give it proper frame and add it as cell's subview
[cell.contentView addSubview:button];
button.tag = 5;
}
//extract the button and give it title
UIButton *button = (UIButton *)[cell viewWithTag:5];
button.title = [dataSource objectAtIndex:indexPath.row];
return cell;
}
所以你必须了解授权和协议。有关详细信息,请阅读UITableView programming guide。