欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

關(guān)于VerticalTabLayout的使用-創(chuàng)新互聯(lián)

現(xiàn)在很多安卓移動(dòng)端都會(huì)用到TabLayout+ViewPager的搭配,原生的只有橫排設(shè)計(jì)的,這里介紹個(gè)豎的控件VerticalTabLayout。
關(guān)于VerticalTabLayout的使用
關(guān)于VerticalTabLayout的使用
我用的是AS,在gradle中引入compile 'q.rorbin:VerticalTabLayout:1.2.5'即可

站在用戶(hù)的角度思考問(wèn)題,與客戶(hù)深入溝通,找到柳北網(wǎng)站設(shè)計(jì)與柳北網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶(hù)體驗(yàn)好的作品,建站類(lèi)型包括:成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、申請(qǐng)域名、網(wǎng)頁(yè)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋柳北地區(qū)。

找到這個(gè)類(lèi)q.rorbin.verticaltablayout.VerticalTabLayout

setTabHeight 設(shè)置TAB高度
setIndicatorColor 設(shè)置選中TAB的指示顏色(我的是上圖白色)
setupWithViewPager 綁定ViewPager
getTabAt(int)獲得第幾個(gè)tab 獲得的是一個(gè) 自定義類(lèi) TabView 繼承了 FrameLayout

單單靠API里的方法可能無(wú)法滿(mǎn)足我們的需求,可以自己建個(gè)類(lèi)繼承VerticalTabLayout

像我里面要實(shí)現(xiàn)白色橢圓居中和藍(lán)色靠右的指示形狀要重寫(xiě)setIndicatorGravity ()方法

protected void setIndicatorGravity () {

        switch (mIndicatorGravity) {
            case Gravity.LEFT:
                mIndicatorX = 0;
                if ( mLastWidth != 0 ) mIndicatorWidth = mLastWidth;
                setPadding(mIndicatorWidth, 0, 0, 0);
                break;

            case Gravity.RIGHT:
                if ( mLastWidth != 0 ) mIndicatorWidth = mLastWidth;
                setPadding(0, 0, mIndicatorWidth, 0);
                break;

            case Gravity.FILL:
                mIndicatorX = 0;
                setPadding(0, 0, 0, 0);
                break;

            case Gravity.CENTER_HORIZONTAL:
                setPadding(0, 0, 0, 0);
                break;
        }

        post(new Runnable() {
            @Override
            public void run () {

                switch (mIndicatorGravity) {
                    case Gravity.RIGHT:
                        mIndicatorX = getWidth() - mIndicatorWidth;
                        break;

                    case Gravity.FILL:
                        mLastWidth = mIndicatorWidth;
                        mIndicatorWidth = getWidth();
                        break;

                    case Gravity.CENTER_HORIZONTAL:
                        mIndicatorX = (getWidth() - mIndicatorWidth) / 2;
                        break;
                }

                invalidate();
            }
        });
    }

在addTab (TabView tabView) 添加 tabView 時(shí) 在落焦發(fā)生改變時(shí)改變 Indicator

@Override
public void addTab (TabView tabView) {

    if ( tabView != null ) {

        tabView.setBackground(null);
        addTabWithMode(tabView);

        tabView.setOnFocusChangeListener(new OnFocusChangeListener() {
            @Override
            public void onFocusChange (View v, boolean hasFocus) {

                int position = mTabStrip.indexOfChild(v);

                if ( hasFocus ) {
                    chgIndicator(true);
                    setTabSelected(position);
                }

                if ( null != mTabFocusChangeListener ) {
                    mTabFocusChangeListener.onFocusChange(v, hasFocus, position);
                }
            }
        });

                    。。。

    } else {
        throw new IllegalStateException("tabview can't be null");
    }
}

public void chgIndicator (boolean hasFocus) {
    mColorIndicator = hasFocus ? Color.WHITE : ComUtils.getClr(R.color.blue_0099e5);
    mIndicatorWidth = hasFocus ? ViewUtils.getCorrectWidth(438) : ViewUtils.getCorrectWidth(6);
    mIndicatorCorners = hasFocus ? ViewUtils.getCorrectWidth(48) : 0;
    setIndicatorGravity(hasFocus ? Gravity.CENTER_HORIZONTAL : Gravity.RIGHT);
}

拙見(jiàn)差不多介紹完了,大佬勿噴

另外說(shuō)個(gè)小問(wèn)題,我開(kāi)發(fā)中測(cè)試給我提的
在第一次進(jìn)這個(gè)頁(yè)面的時(shí)候,切換TAB會(huì)閃現(xiàn)1次藍(lán)色背景再切換就不會(huì)了,但是重新進(jìn)頁(yè)面會(huì)復(fù)現(xiàn)
后來(lái)發(fā)現(xiàn)在TabView初始化的時(shí)候原來(lái)會(huì)給他設(shè)置個(gè)默認(rèn)背景setDefaultBackground();

public LoginTabView (Context context) {
    super(context);
    mContext = context;
    mTabIcon = new TabIcon.Builder().build();
    mTabTitle = new TabTitle.Builder().build();
    mTabBadge = new TabBadge.Builder().build();
    initView();
    int[] attrs;
    if ( Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP ) {
        attrs = new int[]{android.R.attr.selectableItemBackgroundBorderless};
    } else {
        attrs = new int[]{android.R.attr.selectableItemBackground};
    }
    TypedArray a = mContext.getTheme().obtainStyledAttributes(attrs);
    mDefaultBackground = a.getDrawable(0);
    a.recycle();
    setDefaultBackground();
}

把這段去掉即可,或是在addTabView時(shí)候tabView.setBackground(null);我為了安全起見(jiàn)用的是后者

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

網(wǎng)站標(biāo)題:關(guān)于VerticalTabLayout的使用-創(chuàng)新互聯(lián)
URL標(biāo)題:http://aaarwkj.com/article30/dpjepo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)、動(dòng)態(tài)網(wǎng)站網(wǎng)站導(dǎo)航、網(wǎng)站設(shè)計(jì)公司營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、App設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)
国产区青青操自拍视频| 超碰国产精品一区二区| 日韩成人大片在线播放| 久久综合中文字幕一区| 国产剧情av专业在线观看| 午夜在线精品福利视频| 亚洲精品国产精品乱码不| 久久欧精品欧美日韩精品| 亚洲欧美综合一区二区三区| 激情啪啪啪的免费网站| 亚洲综合偷拍欧美一区色| 97久久精品亚洲中文字幕| 日韩欧美短视频在线观看| 亚洲国产天堂久久综合| 日本黄色一区二区三区四区| 日韩人妻中文字幕亚洲| 亚洲欧洲一区二区免费| 午夜在线观看欧美福利| 久久精品中文字幕人妻| 日本中文字幕乱码一区| 久久久久久国产精彩视频| 插入内射视频在线观看| 国产高清不卡av在线| 日本熟妇一区二区三区高清视频| 日本免费一区二区在线视频| 中文字幕在线精品乱码麻豆| 亚洲中文永久免费视频| 国产毛片一区二区在线| 青青草日韩视频在线观看 | 亚洲少妇精品视频在线| 国产av剧情在线免费观看| 一区二区高清中文字幕| 天天操天天射夜夜爽| 香蕉视频欧美久久精品| 99热精品这里只有精品| 激情图区亚洲一区二区| 久久青草精品欧美日韩精品| av高清不卡一区二区免费在线| 日本一区二区三区久久久| 91成人国产综合久久精品| 免费一区二区不卡去日本|