私は、アプリケーションがRTLデバイスコンフィグレーションで実行されたときにUIBarButtonItem
〜self.navigationItem.leftBarButtonItem
を追加し、LTRデバイスコンフィグレーション時にはself.navigationItem.rightBarButtonItem
を追加しました。 どちらの設定でも、UIBarButtonItem
はデフルトボタンである戻るボタンをカバーします。私も、通常のシステムUIBarButtonItem
で試してみました追加されたUIBaviButtonItemはUINavigationControllerのバックボタンをカバーします
let label = UILabel(frame: CGRect(x: 0, y: 0, width: CGFloat(150), height: CGFloat(20)))
label.backgroundColor = UIColor.clear
label.font = UIFont.systemFont(ofSize: 18.0)
label.shadowColor = UIColor(white: 0.0, alpha:0.5)
label.textAlignment = NSTextAlignment.center
label.textColor = UIColor(hexaValue: ConsColors.albums)
label.text = "Just text"
label.sizeToFit()
if UIApplication.shared.userInterfaceLayoutDirection == UIUserInterfaceLayoutDirection.rightToLeft{
self.navigationItem.leftBarButtonItem = UIBarButtonItem(customView: label)
}else{
self.navigationItem.rightBarButtonItem = UIBarButtonItem(customView: label)
}
:
は、ここに私のコードです。 UINavigationcontroller
セマンティックコンテンツ属性force RightToLeftまたはLefttoRightが動作しないように設定しようとしました。
UINavigationBar.appearance().semanticContentAttribute = .forceRightToleft
私はそれでスウィフト3、Xcodeの8.1とiPadエア2使いのOSのverionは9.3.2 は、誰もがそれを修正する方法を知っていているのか?
ありがとう、ありがとうございました。私の理解あたりとして
、あなたの要件は、デフォルトを持つことである:これは確かにカスタムボタンが
更新バックボタンの後に追加されるようになります
self.navigationItem.leftItemsSupplementBackButton = true
の下に、このプロパティを設定し
ありがとう、私はそれを試みました、そして、私が達成したいと思っていたのは、一方の側に戻るボタンともう一方の側のボタン/ビューです。両方のボタンは同じ側にあります。それは私に起こる。 –
私のデバイスがLTRを設定すると、LTRが機能し、戻るボタンは左側にあり、2番目のボタンは右側にあります。デバイスが設定されている場合でも、RTLの戻るボタンと第2のボタンは右側にあります。奇妙な行動。 –
あなたが正しいifステートメントの必要はありません。しかし、私が達成したいと思っていなかったとしても、片側に戻るボタンと反対側に別のボタン/ビューがあり、同じ側の両方のボタンではありません。 –