UIActionViewが誤って表示される
-
10-07-2019 - |
質問
Webサービスに同期できるデータがある場合、iPhoneアプリの初期ビューが読み込まれるとすぐにポップアップするUIActionSheetがあります。問題は、UIActionSheetのポップアップが高すぎることです。タブバーのちょうど半分がアクションシートの下に表示されます。これはスタイリングが原因だとは知りませんか?誰もこれを防ぐための説明/解決策を提供できますか?!
提案をありがとう、私のコードは以下に表示されます...
- (void)viewDidLoad {
//...preset a few values here, unrelated to the view...
//...
// Add an actionsheet to prompt for a DB sync
if ([myDatabase isSyncPossible] == true) {
UIActionSheet *actionsheet = [[UIActionSheet alloc]
initWithTitle: @"You have information that hasn't been uploaded, would you like to sync now?"
delegate: self
cancelButtonTitle: @"No thanks, maybe later"
destructiveButtonTitle: @"Yes, upload now"
otherButtonTitles: nil];
actionsheet.tag = 2;
[actionsheet showInView:self.view];
[actionsheet release];
}
}
解決
あなたの説明を適切に理解していると仮定すると、「self.view」のフレームはタブバーの下までは実行されず、代わりに半分だけ実行されるようです。アクションシートはビューの下部から描画されるため、そのビューのどこからでも開始されます。修正するには、「self.view.frame」を画面の下部に移動します。
スクリーンショットが役立ちます。
他のヒント
showInView:
呼び出しの場合、コントローラーのビューの代わりにナビゲーションビューまたはタブバービューを使用してみてください。
所属していません StackOverflow