自定义tableviewcell.xib没有填充tableview

时间:2015-02-11 22:57:32

标签: ios objective-c xcode

我遇到了一个烦人的问题,我不能为我的生活找到答案。我知道这已被覆盖,据我所知,我已经做好了一切,但我无法让这个自定义单元显示在模拟器上。

我对表格视图和集合视图也遇到了这个问题,我觉得两者的结果都是一样的,所以如果你能帮助我查看表格,那么它就是非常感激。这是:

以下代码来自View Controller的.m文件,正如您在viewdidload方法中看到的那样,我已经注册了nib并提供了重用标识符&table; CharlesViewCell'。现在纠正我,如果我错了,但我相信我应该将这个标识符提供给故事板中的原型单元格,并将xib的重用标识符留空。换句话说,我唯一应该使用' tableViewCell'标识符用于原型单元格,在viewdidload方法中,以及cellforRowAtIndexPath方法,对吗?如果我遗漏了任何步骤,请告诉我,提前谢谢你们:

#import "headEndChassisViewController.h"
#import "HeadEndChassisTableViewCell.h"

@interface headEndChassisViewController ()

@end

@implementation headEndChassisViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.

    UINib *cellNib = [UINib nibWithNibName:@"headEndChassisCollectionViewCell" bundle:nil];
    [self.headEndChassisCollectionView registerNib:cellNib forCellWithReuseIdentifier:@"headEndCell"];

    UINib *tableViewCellNib = [UINib nibWithNibName:@"HeadEndChassisTableViewCell" bundle:nil];
    [self.headEndChassisTableView registerNib:tableViewCellNib forCellReuseIdentifier:@"tableViewCell"];


    //The code below configures the textviews underneath the CollectionView

    [[self.slotNumberTextView layer] setBorderColor:[[UIColor blackColor] CGColor]];
    [[self.slotNumberTextView layer] setBorderWidth:1];
    [[self.slotNumberTextView layer] setCornerRadius:1];
     self.slotNumberTextView.editable = NO;

    [[self.slotStatusTextView layer] setBorderColor:[[UIColor blackColor] CGColor]];
    [[self.slotStatusTextView layer] setBorderWidth:1];
    [[self.slotStatusTextView layer] setCornerRadius:1];
    self.slotStatusTextView.editable = NO;

    [[self.bandTextView layer] setBorderColor:[[UIColor blackColor] CGColor]];
    [[self.bandTextView layer] setBorderWidth:1];
    [[self.bandTextView layer] setCornerRadius:1];
    self.bandTextView.editable = NO;

    [[self.typeTextView layer] setBorderColor:[[UIColor blackColor] CGColor]];
    [[self.typeTextView layer] setBorderWidth:1];
    [[self.typeTextView layer] setCornerRadius:1];
    self.typeTextView.editable = NO;

    //Code below configures the input power textview corner radius

    [[self.inputPowerTextView layer] setCornerRadius:3.3];

    //Code below configures border for Apply and Reset Buttons

    [[_resetButtonProperty layer]setBorderWidth:1.0f];
    [[_applyButtonProperty layer]setBorderWidth:1.0f];


}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

/*
#pragma mark - Navigation

// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    // Get the new view controller using [segue destinationViewController].
    // Pass the selected object to the new view controller.
}
*/

#pragma mark - Collection View

-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView{
    return 1;
}

-(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{
    return 12;
}
-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{

    UICollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"headEndCell" forIndexPath:indexPath];

    cell.backgroundColor = [UIColor whiteColor];
    return cell;
}




#pragma mark - Table View

-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
    return 1;
}

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    return 8;
}

-(UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"tableViewCell" forIndexPath:indexPath];
    cell.backgroundColor = [UIColor whiteColor];

    return cell;
}

- (IBAction)resetButton:(id)sender {
}

- (IBAction)applyButton:(id)sender {
}
@end

1 个答案:

答案 0 :(得分:0)

这可能是很多事情。

第一次是否设置了表视图和集合视图的委托和数据源?这常常被遗漏(自己做了几次)。我没有在viewDidLoad中看到它,所以你必须在你的故事板中完成它。您没有提到您尝试退出行的单元格,这使我相信这是问题的根源,并且假设您没有收到错误或崩溃,这是我最好的选择。

第二,它可能是你如何装你的笔尖。我相信你不需要在代码中执行此操作。我想你可以将UITableView单元格拖到表视图中,设置重用,并在检查器中设置类。如果我错误地加载了this博客中描述的笔尖,过去也为我工作过。

希望有所帮助。