0

ストーリーボード ファイル内からロードされている内部の Tableview Controller に取り組んでいます。

再利用のために、ストーリーボードのセルの 1 つを nib ファイルからロードしたいと考えています。

どうやってやるの?

私の現在の実装はviewDidLoadのみを使用し、他のテーブルビューデリゲートメソッドは使用しません

- (void) viewDidLoad
{

    [super viewDidLoad];

     self.title = self.requestTypeDescription;

self.itemDescriptionLabel.text = self.currentItem.articleDescription;
    self.modelNumberLabel.text = self.currentItem.partNumber;

  notesHistoryString =  @"Valerie is a young woman who lives...";
    self.partNumberCell.count.text = [NSString stringWithFormat:@"%@", self.currentItem.sapCount];
    self.serialNumbersCell.count.text = [NSString stringWithFormat:@"%lu", (unsigned long)self.currentItem.serialNumbers.count];



}
4

2 に答える 2

0

Tableview Controller(TVC)内のテーブルビューのストーリーボードに空白のセルを作成することになりました。次に、 UIView の nib ファイルを作成しました。

nib をロードしている私のビューには initWithFrame (xib をロードするため) があり、その実装は次のようになります。

    @implementation SimpleView

    -(id)initWithFrame:(CGRect)frame
    {

        NSArray *arrayOfViews = [[NSBundle mainBundle] loadNibNamed:@"SimpleView"
                                                              owner:nil
                                                            options:nil];

        if ([arrayOfViews count] < 1){
            return nil;
        }

        SimpleView *newView = [arrayOfViews objectAtIndex:0];
        [newView setFrame:frame];
        self = newView;

        return self;

    }

次に、TVC 内の viewDidLoad で、次のように空白のセル内に追加しました。

@implementation ExistingRequestsItemDetailActionVC




#pragma mark - Life cycle
- (void) viewDidLoad
{

    [super viewDidLoad];

     self.title = self.requestTypeDescription;

self.itemDescriptionLabel.text = self.currentItem.articleDescription;
    self.modelNumberLabel.text = self.currentItem.partNumber;

  notesHistoryString =  @"Valerie is a young woman who lives...";
    self.partNumberCell.count.text = [NSString stringWithFormat:@"%@", self.currentItem.sapCount];
    self.serialNumbersCell.count.text = [NSString stringWithFormat:@"%lu", (unsigned long)self.currentItem.serialNumbers.count];

// Here is where I am loading the other cellview from xib


    SimpleView *myView = [[SimpleView alloc] initWithFrame:self.myCell.bounds];

    myView.slider.value=1;

    [self.myCell addSubview:myView];


}
于 2013-08-08T18:21:01.777 に答える
0

nib を registerNib:forCellReuseIdentifier: で登録し (viewDidLoad では適切な場所です)、cellForRowAtIndexPath で、そのタイプのセルが必要な場合に、そのメソッドに渡したのと同じ識別子を持つセルをデキューします。

于 2013-08-08T01:21:27.257 に答える