你好,歡迎來到IOS教程網

 Ios教程網 >> IOS使用技巧 >> IOS7技巧 >> Swift將導航欄標題修改成自定義視圖(圖片、按鈕、分段選擇等)

Swift將導航欄標題修改成自定義視圖(圖片、按鈕、分段選擇等)

編輯:IOS7技巧
下面我們就一起來看一款關於Swift將導航欄標題修改成自定義視圖(圖片、按鈕、分段選擇等)的例子,希望這篇教程能夠幫助到各位同學哦。

默認導航欄UINavigationController的標題是文字,通過navigationItem.titleView屬性可以很方便的將其替換成自定義的UIView視圖。

   

1,使用圖片作為標題

原文:Swift - 將導航欄標題修改成自定義視圖(圖片、按鈕、分段選擇等)

 

1 2 let image = UIImage(named: "logo") self.navigationItem.titleView = UIImageView(image: image)
2,使用按鈕作為標題

原文:Swift - 將導航欄標題修改成自定義視圖(圖片、按鈕、分段選擇等)

import UIKit
 
class ViewController: UIViewController {
 
    override func viewDidLoad() {
        super.viewDidLoad()
 
        let button = UIButton(frame:CGRectMake(0, 0, 110, 110))
        button.setImage(UIImage(named: "btn3"), forState: .Normal)
        button.addTarget(self,action:Selector("titleTapped"),forControlEvents:.TouchUpInside)
        self.navigationItem.titleView = button
    }
     
    func titleTapped(){
        print("tapped")
    }
 
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }
}

3,使用分段選擇控件作為標題

原文:Swift - 將導航欄標題修改成自定義視圖(圖片、按鈕、分段選擇等)

import UIKit
 
class ViewController: UIViewController {
 
    override func viewDidLoad() {
        super.viewDidLoad()
 
        let items=["電話","短信"] as [AnyObject]
        let segmented=UISegmentedControl(items:items)
        segmented.center=self.view.center
        segmented.selectedSegmentIndex=0 //默認選中第1項
        segmented.addTarget(self, action: "segmentDidchange:",
            forControlEvents: UIControlEvents.ValueChanged)  //添加值改變監聽
        self.navigationItem.titleView = segmented
    }
     
    func segmentDidchange(segmented:UISegmentedControl){
        //獲得選項的索引
        print(segmented.selectedSegmentIndex)
        //獲得選擇的文字
        print(segmented.titleForSegmentAtIndex(segmented.selectedSegmentIndex))
    }
 
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }
}

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved