0

viewForRow デリゲート メソッドによって各行にカスタム ビューを追加する pickerView があります。ここでの目標は、pickerView が回転している間 (中央の静的ビュー)、ハイライト ビューのように、中央の (選択された) 行に別のビューを表示することです。どんな助けでも大歓迎です..

4

1 に答える 1

2

iOS 7 では、サブビューを に追加してこれを行うことができますUIPickerView。以前のバージョンでUIPickerViewは、ボーダーなどがあるため、非常に面倒な操作になるため、おそらくカスタム ピッカーのような実装が必要になるでしょう。

iOS 7 の場合、以下のようなものを使用できます。

CGFloat rowHeight = 100;  // rowHeight of your picker view, i assumed your rowHeight equals to 100

// Create a custom view, centered vertically in your picker view
UIView * view = [[UIView alloc] initWithFrame:CGRectMake(0,
                                                         (pickerView.bounds.size.height - rowHeight)/2,
                                                         pickerView.bounds.size.width,
                                                         rowHeight)];
[view setBackgroundColor:[UIColor clearColor]];

// Do some highlighting operations
[view.layer setCornerRadius:5.0];
[view.layer setBorderColor:[UIColor blueColor].CGColor];
[view.layer setBorderWidth:5.0];

[pickerView addSubview:view];
于 2014-03-30T09:33:35.953 に答える