UIScrollView に UITableView があります。表のセルは垂直、つまり上下に並んでいます。一番下のセルを縦向きで選択すると、強調表示されてポップオーバーが表示されます。ただし、横向きに回転すると、選択したセルは表示されなくなりますが、ポップオーバーは残ります。回転時の UIScrollView は、UITableView の一番上のセルを新しい (ランドスケープ) 方向の一番上のセルとして使用することを理解しています。選択したセルを回転時にビュー内に保持するにはどうすればよいですか。つまり、回転時に、選択したセルを参照点として回転させることができます。
1 に答える
1
ビューコントローラーのインターフェース回転イベントでこのメソッドを呼び出す必要があると思います。
-(void)scrollToRowAtIndexPath:(NSIndexPath *)indexPath
atScrollPosition:(UITableViewScrollPosition)scrollPosition
animated:(BOOL)animated;
ビューコントローラーでできることは次のとおりです。
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromOrientation
{
[tableView scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionBottom animated:YES];
}
次のイベントから、選択した行の indexPath を取得できます。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
于 2013-08-22T20:42:31.447 に答える