0

NSCoderを使用する場合、UITableviewのカスタムテーブルビューセルラベルをどこに追加しますか?私はすでにUITableViewCellクラスを作成し、すべてをInterfaceBuilderに接続しました。

交換しようとしましcell.textLabel.text = oneName.name; with cell.label.text = oneName.name;たが、黒い四角が表示されています。

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    CustomCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
    if (!cell) {
        cell = [[CustomCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }
    // Configure the cell...
    NSUInteger row = [indexPath row];
    DrillObject *oneName = [self.addDrill objectAtIndex:row];
    cell.textLabel.text = oneName.name;



    return cell;
}
4

2 に答える 2

0

ラベルが適切なサイズであると確信していますか?カスタムセルを使用する場合は、無料のSensibleTableViewフレームワークを使用することを強くお勧めします。フレームワークは、オブジェクトのデータをカスタムラベルに自動的にロードし、必要に応じてラベル/セルのサイズも自動的に変更します。

于 2013-03-24T07:11:48.903 に答える
0

ここで必要なようにCustomCellクラスにラベルを追加する2つのオプションがあります。1
-xibファイルのセルにラベルを追加し、それにタグを割り当ててから、次のようなゲッターを作成します。

-(UILabel*)label
{
     id label = [self viewByTag:3]; 
     if([label isKindOfClass:[UILabel class]])
     {
             return label;
     }
     return nil;
}

2- initメソッドでラベルを作成し、ラベルの背景色を次のようにクリアカラーに設定することを忘れないでください。

UILabel *label = [UILabel alloc] initWithFrame:myFreame];
[label setBackgroundColor:[UIColor clearColor]];

// now you should have property on .h file like this 
@property (nonatomic, weak) UILabel *label;
// so back to the init dont forget to do this

_label = label;

それでおしまい。

于 2013-03-24T07:26:37.973 に答える