私はUIPickerViewをサブクラス化してもう少し機能を追加しました(私は99%はこの質問とは関係ありません)。 drawRect私は、ツールバーを少し簡単に解除するためのツールバーを追加しました。問題は、UIToolbarもツールバーのUIBarButtonItemも触れません。それは、タッチがその背後のビュー(UITableView)に転送される点で、ビューが「不可視」であるかのようです。私は、ピッカーとツールバーの両方を保持する「コントロール」ビューを作ることができます。しかし、別のビューを作成せずにこれを行う方法があるかどうかを知りたいだけでしたか?カスタムUIPickerView上のUIToolbarは接触しません
- (void)drawRect:(CGRect)rect
{
if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
pickerToolbar = [[UIToolbar alloc] initWithFrame: CGRectMake(0, 0, self.frame.size.width, 40)];
UIBarButtonItem *closeButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem: UIBarButtonSystemItemDone target: self.delegate action: closeAction];
[pickerToolbar setItems: [NSArray arrayWithObject: closeButton]];
[self addSubview: pickerToolbar];
}
}
がここに写真です:
は、ここに私のdrawRectコードです
私はそれについて考えている、あなたは絶対に儀式です、それは本当に本当に馬鹿です。しかし、入力アクセサリービューは読み取り専用ですので、私はプロパティを再定義すると思います。私はそれを試してみるよ、ありがとう! – pob21
これは実際に私が探していた結果を私に与えることはありませんでしたが、あなたの助けにたくさん感謝します! – pob21
入力アクセサリビューは読み取り専用ではありません。多分、私ははっきりしませんでした。ピッカーを使用して内容を編集するテキストフィールドがあります。このテキストフィールドには、入力ビュー(標準UIPickerViewビュー)と入力アクセサリビュー(ツールバー)の2つのプロパティがあります。これらを設定すると、システムによってそれらがまとめられます。なぜあなたはピッカーをサブクラス化していますか? – jrturton