11

UIPickerView を備えたアプリがあります。メソッドでカスタムビューを返しています

- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view 

iOS 6 では問題なく表示されていましたが、iOS 7 ではそれほどでもありませんでした -- 以下のスクリーンショット。

フォーカスのないセルでは、2 番目と 3 番目の列が重なっていることに注意してください。中央の行が正しいです。

助言がありますか?

ここに画像の説明を入力

4

4 に答える 4

2

imihaly が以前の投稿で述べたように、これは LAST コンポーネントの widthForComponent 値が 106 ピクセルを超える場合にのみ発生するようです。他のコンポーネントは 106 を超える値を返す可能性があり、問題なく表示されます。また、widthForComponent によって返される値よりも幅が小さいビューを返す場合、ビューは中央に配置されますが、左に約 10 ピクセルオフセットされます。

于 2013-11-04T22:24:43.903 に答える
0

同様の問題がありましたが、代わりに単純な数字を表示していました。私の同様の質問を参照してください。簡単な答えは、コンポーネントを異なる UIPickerViews に分割する必要があったということです。

于 2013-11-07T02:09:09.973 に答える
0

@imihalyが述べたように、ビューに追加されるピッカービューの幅を広げるために私が思いついたソリューションは1つだけです。

https://github.com/Dharmesh-shah2412/demoPickerViewのようなデモを作成しました

于 2018-02-09T13:30:52.340 に答える