一個簡單易用的Android導航欄TitleBar

jopen 9年前發布 | 13K 次閱讀 titlebar Android開發 移動開發

一個簡單易用的導航欄TitleBar,可以輕松實現IOS導航欄的各種效果整個代碼全部集中在TitleBar.java中,所有控件都動態生成,動態布局。不需要引用任何資源文件,拷貝TitleBar.java到自己工程即可使用 alt text

1. 左邊文字,左邊返回圖片,左邊點擊事件

左邊可設置圖片,文字單獨顯示,也可以設置圖片文字同時顯示
titleBar.setLeftImageResource(R.mipmap.back_green);
titleBar.setLeftText("返回");
titleBar.setLeftTextColor(Color.WHITE);
titleBar.setLeftClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        finish();
    }
});

2. 中間文字

中間文字根據左右控件始終居中顯示,自動排版
titleBar.setTitle("文章詳情");
titleBar.setTitleColor(Color.WHITE);

3. 右邊action按鈕或者文字

通過addAction添加操作控件,通過removeAction刪除控件。可以使用圖片或者文字。
titleBar.setActionTextColor(Color.WHITE);
mCollectView = (ImageView) titleBar.addAction(new TitleBar.ImageAction(R.mipmap.collect) {
    @Override
    public void performAction(View view) {
        Toast.makeText(MainActivity.this, "點擊了收藏", Toast.LENGTH_SHORT).show();
        mCollectView.setImageResource(R.mipmap.fabu);
    }
});

titleBar.addAction(new TitleBar.TextAction("發布") {
    @Override
    public void performAction(View view) {
        Toast.makeText(MainActivity.this, "點擊了發布", Toast.LENGTH_SHORT).show();
    }
});

4. 下劃分割線

titleBar.setDividerColor(Color.GRAY);

5. 一行代碼適配沉浸式

如果你的項目使用了沉浸式,布局時候加上這行代碼,TitleBar會自動填充狀態欄
titleBar.setImmersive(true);

項目主頁:http://www.baiduhome.net/lib/view/home/1447491178288

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!