Hatena::Groupiphone-dev

Ni chicha, ni limona - 平均から抜けられない僕

2009-04-30

[iPhone][develop] UIPickerViewで画像を表示させる方法 22:14  [iPhone][develop] UIPickerViewで画像を表示させる方法 - Ni chicha, ni limona - 平均から抜けられない僕 を含むブックマーク はてなブックマーク -  [iPhone][develop] UIPickerViewで画像を表示させる方法 - Ni chicha, ni limona - 平均から抜けられない僕  [iPhone][develop] UIPickerViewで画像を表示させる方法 - Ni chicha, ni limona - 平均から抜けられない僕 のブックマークコメント

書籍「Beggining iPhone Development」に載っている方法の受け売りなのですが、ピッカーで通常使用する下記デリゲート:


 - (NSString *)pickerView:(UIPickerView *) titleForRow:(NSInteger)
             forComponent:(NSInteger)

ではなく以下のデリゲートメソッドを使用すると、Picker上に画像を配置して、それを選択できるようになります。


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

使い方はほとんど同じで、rowに相当するUIViewオブジェクトを返してあげるだけで画像を表示してくれます。

ちなみにサンプルアプリではこんなアプリを作っています。面白そうでしょ。


f:id:paella:20090430220612p:image:h300


ただ、両方を同時に使うことはできないみたいです。両方実装して、viewForRowでnilを返してみたのですが、もう1つのデリゲートは呼ばれず、そのまま空白が表示されるだけでした。

強引ですが、テキストを表示するUIViewを作って、それを渡してあげないといけないみたいです。

ご参考まで。

paellapaella2009/04/30 22:15画面のサンプルアプリを入力していて、例のエンドレスロールにしたい、という願望が湧いていたのです。