Swift

Swift:UINavigationControllerで画面遷移しよう!(2)


今回は、
UINavigationBarをカスタマイズしていきます!

前回作ったアプリは、viewの真ん中にあるボタンをタップすることで、次の画面に遷移するアプリでした。

前回がまだの方はこちら

swift3:②UINavigationControllerで画面遷移しよう!(1)

今回はnavigationBarにボタンを作成し、そのボタンで画面遷移します!!

こんな感じの画面
f:id:jumprails3303:20161118234057p:plain
前より増して、シンプルですね・・・ちょっとさみしいな

 

 

 

StoryBoardを開き、1枚目の、真ん中にUIButtonが配置してあるviewControllerを見つけてください。
そして、UIButtonを消しましょう!!

次に前回忘れたviewの色つけです!
色をつけたほうが遷移しているのがよくわかって面白いですよ!!
f:id:jumprails3303:20161118190557p:plain
こんな感じです!!

UINavigationBarをコードでカスタム

そして、コードを変更します!
viewDidLoadの中に

navigationItem.rightBarButtonItem = UIBarButtonItem(title: "次へGo!", style: .plain, target: self, action: #selector(self.gogoNext))

を追加!!
解説すると、
NavigationBarの右に『次へGo!』と書かれたボタンを配置して、それをタップするとgogoNextというメソッドを動作させてください
という意味です。

gogoNextメソッドを追加!!
gogoNextの中身は前回やったperformSegueですね!覚えていない方は前回の記事を参照ください!!

 

前回つけた@IBActionは消しましょう!

import UIKit

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        navigationItem.rightBarButtonItem = UIBarButtonItem(title: "次へGo!", style: .plain, target: self, action: #selector(self.gogoNext))
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    
    
    
    func gogoNext() {
        performSegue(withIdentifier: "goNext", sender: nil)
    }

}

どうですか?
遷移できましたか?
このNavigationBarのカスタマイズは非常に便利なので、
ぜひマスターしてください!!


ABOUT ME
ささお
3年目iOSエンジニア。 スタートアップで働いておりやす。 プログラミングスクールとエンジニアのキャリアを考えたい。 作ったアプリ - https://apps.apple.com/us/app/loverprofile/id1463563845?l=ja&ls=1