我想在我的UITableViewCintroller子类中创建一个默认静态表,但是没有出现数据。我不知道问题出在哪里,我认为未调用cellForRowAtIndexPath方法。
这是我的代码:
#import <UIKit/UIKit.h>
@interface S5WebTable : UITableViewController <UITableViewDelegate, UITableViewDataSource>
@end
#import "S5WebTable.h"
@interface S5WebTable ()
@property(assign,nonatomic) BOOL isLoaded;
@end
@implementation S5WebTable
- (void)viewDidLoad {
[super viewDidLoad];
self.tableView.dataSource = self;
self.tableView.delegate = self;
[self.tableView sizeToFit];
}
-(void)viewWillAppear:(BOOL)animated{
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
#pragma mark - Table view data source
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
//#warning Potentially incomplete method implementation.
// Return the number of sections.
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return 7;
}
- (UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
UITableViewCell *cell = [[UITableViewCell alloc] init];
cell.textLabel.text =@":)";
return cell;
}
最佳答案
我认为您必须为每个单元格使用不同的标识符
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString *cellIdentifier = [NSString stringWithFormat:@"s%i-r%i", indexPath.section, indexPath.row];
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
if (cell == nil)
{
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier] autorelease];
//you can customize your cell here because it will be used just for one row.
}
return cell;
}
关于ios - iOS:在UITableViewCintroller子类中创建默认静态表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32605862/