私は迅速なアプリを持っており、UIViewController にはボタンがあります。私の場合StoryBoard
、ボタンをに添付し、UITabController
ユーザーがクリックすると、リダイレクトされます。ただし、デフォルトでは、最初のタブが表示されます。代わりに 3 番目のタブを表示する方法はありますか?
これは私のセグエのオプションです:
私は迅速なアプリを持っており、UIViewController にはボタンがあります。私の場合StoryBoard
、ボタンをに添付し、UITabController
ユーザーがクリックすると、リダイレクトされます。ただし、デフォルトでは、最初のタブが表示されます。代わりに 3 番目のタブを表示する方法はありますか?
これは私のセグエのオプションです:
はい - しかし、どれだけ複雑にする必要があるかは、何をしているかによって異なります。
最初からしか行かない場合は、 or関数UIViewController
にコードを追加するだけです(インデックスはゼロベースであることを思い出してください)。viewWillAppear
viewWillLoad
override func viewWillAppear(animated: Bool)
{
self.selectedIndex = 2
}
複数のエントリ ポイントがある場合は、 を使用してprepareForSegue
にフラグを設定できますtabBarController
。この例では、値が 100 と 200 に設定された 2 つのボタンがありUIViewController
ますtag
。
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "TabBarSegue"
{
if let destinationVC = segue.destinationViewController as? myTabBarViewController
{
if sender!.tag == 100
{
destinationVC.jumpToTab2 = true
}
if sender!.tag == 200
{
destinationVC.jumpToTab2 = false
}
}
}
}
でTabBarController
、フラグを定義しましたjumpToTab2
class myTabBarViewController: UITabBarController
{
var jumpToTab2 : Bool = false
override func viewWillAppear(animated: Bool)
{
if jumpToTab2
{
self.selectedIndex = 2
}
jumpToTab2 = false // reset the flag before next time
}
}