ポップオーバーに「引き出し」テーブルが表示されたiPadアプリがあります。ユーザーは、ドロワー内のアイテムをタップアンドホールドして、そのアイテムをそのアイテムからメインビューにドラッグできます。その部分は正常に機能します。残念ながら、ドラッグされているビューはポップオーバーの下に表示され、その下からドラッグアウトされるまで表示するには小さすぎます。ビューをポップオーバーのビューコントローラーのサブビューとして追加すると、ポップオーバーのフレームによってクリップされ、UIPopoverController
ビューにアクセスできないため、レイヤーを無効にできませんmasksToBounds
。おそらく、無効になりません。とにかく素晴らしいアイデアになります。UIWindow
値の高い追加機能を使用してwindowLevel
、ドラッグされたビューをポップオーバーの上に強制的に表示できると思いますが、これはやり過ぎのようです。より良い解決策はありますか?
質問する
2732 次
2 に答える
7
とった。UIWindow
正常に動作します。コード:
// when drag starts
draggingView = [[UIWindow alloc] initWithFrame:CGRectMake(0,0,100,100)];
draggingView.windowLevel = UIWindowLevelAlert;
draggingView.center = [gestureRecognizer locationInView:self.view.window];
[draggingView makeKeyAndVisible];
// when drag ends
[draggingView release];
draggingView = nil;
于 2010-04-12T14:16:33.167 に答える
0
Swiftバージョンの追加:
let windows: [UIWindow] = UIApplication.shared.windows
let firstWindow: UIWindow = windows[0]
firstWindow.addSubview(loadingView)
firstWindow.bringSubview(toFront: loadingView)
管理者への編集:レビューに感謝–他の回答を重複して削除UIPopoverController上にUIViewを表示する方法
于 2017-01-27T03:20:42.943 に答える