<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          CustomNavigationBar自定義的導航條

          聯(lián)合創(chuàng)作 · 2023-09-26 12:12

          一種自定義的導航條

          之所以自定義導航條,原因有兩個:

          1、做同時兼容iOS6與iOS7的導航條時,使用原生導航條總是不順手。于是想自定義一個,這樣兼容iOS6與iOS7時,代碼相對統(tǒng)一。另外,因為是自定義的,要做一些特殊的效果時比較容易控制(比如:導航條分成兩行,段選擇器合并到導航條內(nèi))。

          2、一個個人原因,3.5寸屏幕的iOS7右滑返回時,導航條不動只是內(nèi)容頁面移動,感覺比較壓抑。所以,希望兼顧原生的右滑返回,又可以使導航條在滑動時跟著移動。

          ------ 介紹 ------

          1、CustomNaviBarView:自定義的導航條,繼承自UIView。

          - 將導航條分成左中右三個區(qū)域。默認在左區(qū)添加一個返回按鈕。
          - 提供創(chuàng)建導航條按鈕的方法,可在外部自定義按鈕添加到導航條上。
          - 提供外部覆蓋視圖的方法,可在外部自定義一個視圖,覆蓋到導航條上。例如:CustomNaviBarSearchController

          2、CustomNaviBarSearchController:搜索關鍵字輸入框,可對接覆蓋到CustomNaviBarView上。

          - 提供兩種導航條上的關鍵字輸入框
              - 由按鈕觸發(fā),點擊按鈕后顯示輸入框,結(jié)束后銷毀輸入框現(xiàn)實按鈕。
              - 導航條一直顯示輸入框。
          - 提供最近輸入的關鍵字列表。

          3、CustomNavigationController:繼承自UINavigationController。

          - 把系統(tǒng)導航條隱藏,以便顯示自定義的導航條。
          - 若想使用自定義導航條,導航控制器需繼承自此類。

          4、CustomViewController:繼承自UIViewController。

          - 封裝了接入自定義導航條的方法,把具體業(yè)務與自定義導航條分開。
          - 所有需使用自定義導航條的視圖控制器可直接繼承此類。

          ------ 用法 ------

          以Demo為例:

          1、AppNavigationController繼承自CustomNavigationController。

          2、所有視圖控制器繼承自CustomViewController。

          3、一些公共定義被放在GlobalDefine.h中全局引用。

          4、修改標題、設置自定義按鈕。

          [self setNaviBarTitle:@"Title"];     // 設置標題
          
          [self setNaviBarLeftBtn:nil];       // 若不需要默認的返回按鈕,直接賦nil
          
          // 創(chuàng)建一個自定義的按鈕,并添加到導航條右側(cè)。
          _btnNaviRight = [CustomNaviBarView createNormalNaviBarBtnByTitle:@"Next" target:self action:@selector(btnNext:)];
          [self setNaviBarRightBtn:_btnNaviRight];

          5、覆蓋輸入框

          - 創(chuàng)建 CustomNaviBarView 對象。
          - 當按鈕觸發(fā)時,通過 showTempSearchCtrl 方法顯示輸入框。
          - 當輸入框需固定在導航條時,通過 showFixationSearchCtrl 方法現(xiàn)實輸入框。
          - 通過 setRecentKeyword 方法寫入最近使用的關鍵字數(shù)組。

          瀏覽 23
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  www.国产免费 | 天天插一插 | 国产又黄又爽免费观看 | 人成免费 | 欧美黄色直播视频 |