0

UITableView セルのアクセサリ ビューに UIDatePicker のインスタンスを配置しようとしており、テンプレートとしてこのSO スレッドに従っています。ただし、ピッカーがセル全体の上に配置されているように見えます。

ここに画像の説明を入力

以下は、UITableView のアクセサリ ビューに Date Picker を追加するために使用しているコードです。

- (UITableViewCell *)tableView:(UITableView *)tableView cellNewRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"RowCell";

    UITableViewCell *cell = (UITableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:CellIdentifier];
    }

    cell.backgroundColor = [UIColor colorWithRed:0.922 green:0.937 blue:0.949 alpha:1];

    switch (indexPath.row) {

        case EmployeeOvertimeRow:
            cell.textLabel.text = NSLocalizedString(@"Test", @"One");
            _datePicker = [[UIDatePicker alloc]init];
            _datePicker.datePickerMode = UIDatePickerModeTime;
            //OLD: cell.accessoryView     = _datePicker;
            //POST EDIT
            [cell.contentView addSubview:_datePicker];

            break;
        default:
            break;
    }

    return cell;
}

私が間違っていること、またはこれを修正する方法について誰かが何かガイダンスを持っていますか?

4

1 に答える 1

0

accessoryViewaUITableViewCellは確かにあなたが考えているものではありません: それはセルの右側にある小さなビューで、通常は矢印であり、非常に小さく、画面の幅にはまったくなりません。にビューを追加してみてくださいcontentViewheightForRowAtIndexPathメソッドでもセルの高さを大きく設定する必要があります。

于 2015-02-02T17:48:06.847 に答える