ビューコントローラからテーブルビューコントローラへshowPage
というショーセグがあり、performSegueWithIdentifier()
警戒中ボタンで[OK]をクリックした後ショー:埋め込みナビゲーションバーは、iOS 7(小さい画面サイズ)では表示されませんが、iOS 9では表示されません(画面が大きくなると)
@IBAction func enterManuallyTap(sender: AnyObject) {
var code : String!
if #available(iOS 8.0, *) {
let alert = UIAlertController(title: "Enter code", message: "Please enter code", preferredStyle: UIAlertControllerStyle.Alert)
alert.addTextFieldWithConfigurationHandler({ (input:UITextField) in
input.placeholder = "your code"
});
alert.addAction(UIAlertAction(title: "Cancel", style: .Cancel, handler: nil))
alert.addAction(UIAlertAction(title: "OK", style: .Default, handler: { (_) in
barcode = alert.textFields!.first?.text
self.performSegueWithIdentifier("showPage", sender: self)
}))
presentViewController(alert, animated: true, completion: nil)
} else {
let alert = UIAlertView(title: "Enter code", message: "Please enter code", delegate: self, cancelButtonTitle: "Cancel", otherButtonTitles: "OK")
alert.alertViewStyle = UIAlertViewStyle.PlainTextInput
alert.show()
}
}
func alertView(alertView: UIAlertView, clickedButtonAtIndex buttonIndex: Int) {
if buttonIndex == 1 {
var code : String!
code = alertView.textFieldAtIndex(0)?.text
self.performSegueWithIdentifier("showPage", sender: self)
}
}
このすべては私のiOSに完全に9デバイスを動作しますが、私はiOSの7デバイス上でそれをしようとすると、ナビゲーションバーが消えたので、私が見ることができませんタイトルをクリックするか、「戻る」をクリックします。したがって、テーブルビューは画面の最上部から開始され、ステータスバーに表示されます。
私はTranslucent Navigation Bar
にinferred
からトップバーを変更しようとした偽
self.navigationController?.navigationBarHidden = false
にnagivationBarHidden
を設定するが、それはまだ
のiOS 7に表示されない、私はちょうどのためviewDidAppear()
でprint(self.navigationController)
を試してみました私のiOS 7デバイスではnil
と表示されますが、iOS 9デバイスではコントローラーが表示されます:Optional(<UINavigationController: 0x12504e600>)
!なぜ古いデバイスに存在しないのですか?私はあなたがモーダルセグを持っていればナビゲーションコントローラーは存在しないが、通常のショーセグをしているのですが、なぜそれが1つのデバイスでは動作するのか、他のデバイスでは動作しないのか理解できません。
なぜこのようなことが起こるのですか、なぜiOS 7(またはそれより小さいサイズのデバイス)のみですか?
これは、私が使用しているiOS 9デバイスの画面サイズが大きいためですか? (これはiPhone 6Sだが)iOS 7のデバイスはiPhone 4で、画面が小さくなっている。画面サイズの問題であるかどうかをチェックするにはどうすればデバッグするのですか?ただし、いずれのデバイスでも、Segueが移動するテーブルビューコントローラ内のセルは決して切り取られません。
マイストーリーボード(大きな画像をクリックしてください):
問題セグエは、「スキャン」ビューコントローラを選択しますスキャンビューコントローラ間の1です。送信者:メソッド
ストーリーボードのスクリーンショットを追加できますか? –
@MihaiFratu確かに、質問に編集しました –
また、私のPageViewControllerに関連するかもしれませんが、なぜそれが1つのデバイスで動作するのか理解できません:/ –