スクロールする場所に関係なく、UIPickerView
スナップを下に表示したいと思います。UITableView
現在、ボタンが押されたときに提示する にUIPickerView
追加されていますが、テーブルをスクロールすると表示されなくなり、提示した場所の範囲外にスクロールすると、 は表示されませんでした呼ばれました。UITableView
UIPickerView
UIPickerView
これを達成する方法を知っている人はいますか?
感謝
スクロールする場所に関係なく、UIPickerView
スナップを下に表示したいと思います。UITableView
現在、ボタンが押されたときに提示する にUIPickerView
追加されていますが、テーブルをスクロールすると表示されなくなり、提示した場所の範囲外にスクロールすると、 は表示されませんでした呼ばれました。UITableView
UIPickerView
UIPickerView
これを達成する方法を知っている人はいますか?
感謝
UITableViewController
テーブルビューでスクロールしないサブビューを追加する必要がない限り、の使用は素晴らしいです。それは本当にできません。解決策は、UIViewController
代わりに使用して独自のテーブルビューを追加し、テーブルビューのdataSourceを設定してプロトコルを委任し、基本的なテーブルビューコントローラーの配管を複製することです。
ビューコントローラが通常のテーブルビューコントローラのように機能するようになったら、テーブルと一緒にスクロールしないサブビューをビューコントローラのビューに追加できるようになりました。
プログラムでテーブルビューを追加する場合
SearchtableView.frame = CGRectMake(450, 90, 318, 600);
SearchtableView = [[UITableView alloc] initWithFrame:CGRectMake(623, 90, 400, 400)style:UITableViewStyleGrouped];
[self.view addSubview:SearchtableView];
//belove the tableview//
//Add UIPickerView to the self.view]//
私が与えられた答えにはもっと簡単な代替案があるに違いないと何かが私に言ったので、私は解決策を見つけました.
scrollViewDidScroll:
UIPickerView を使用して目的の場所にアニメーション化することで、スクロール ポイントの y 座標を見つけることにしました。
...
[UIView beginAnimations:nil context:NULL];
CGFloat pointY = self.scrollPoint.y;
[self.sortPicker setFrame:CGRectMake(0, pointY + 200, 320, 216)];
[UIView commitAnimations];
...
UIPickerView は、スクロールが停止した場合にのみ表示されるため、タッチ時にスクロールを停止するメソッドを実装する必要があります。
- (void)stopScroll:(UITableView *)tableview
{
CGPoint offset = tableview.contentOffset;
[tableview setContentOffset:offset animated:NO];
}
これにより、任意の場所でいつでも UIPickerView を表示および閉じることができます。