安卓:ViewPager - PagerSlidingTabStrip,对state_selected自定义选项卡背景 [英] Android:ViewPager - PagerSlidingTabStrip, Custom Tab Background on state_selected

查看:481
本文介绍了安卓:ViewPager - PagerSlidingTabStrip,对state_selected自定义选项卡背景的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要使用自定义背景为每个标签时,他们每个人在的 state_selected 的模式。但还是没有任何反应,当我选择一个标签。

I need to use a custom background for each tab when each one of them is in state_selected mode. But still nothing happens when I select a tab.

我以前选择是这样的:( tab_selector.xml 的)

I used selector like this: (tab_selector.xml)

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_selected="true"
         android:drawable="@drawable/gradient_tab" />
    <item android:state_selected="false" 
        android:drawable="@drawable/tab_unselected" />
    <item android:drawable="@drawable/tab_unselected"/>
</selector>

这是 activity_main.xml中的:

<com.astuetz.PagerSlidingTabStrip
    android:id="@+id/tabs"
    android:layout_width="match_parent"
    android:layout_height="48dip"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:background="@drawable/tab_back"
    app1:pstsTabBackground="@drawable/tab_selector"
    app1:pstsIndicatorColor="#00FFFFFF"
    app1:pstsShouldExpand="true" />

<android.support.v4.view.ViewPager
    android:id="@+id/pager"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_below="@+id/tabs"
    tools:context=".MainActivity" />

由于显而易见的,我使用 PagerSlidingTabStrip 通过astuetz。
这里是我如何使用ViewPager和PagerSlidingTabStrip:

As obvious I'm using PagerSlidingTabStrip by astuetz. And here is how I'm using ViewPager and PagerSlidingTabStrip:

final PagerSlidingTabStrip tabs = (PagerSlidingTabStrip) findViewById(R.id.tabs);
viewPager = (ViewPager) findViewById(R.id.pager);
viewPager.setAdapter(mainPagerAdapter);
tabs.setTextColor(Color.WHITE);
tabs.setViewPager(viewPager);

    viewPager.setOnPageChangeListener(new OnPageChangeListener() {
    @Override
    public void onPageSelected(int position) {
        tabs.setViewPager(viewPager);
    }

我尝试混合不同的状态和重新定位他们,但仍然没有工作。
我试图把一个特定的选项卡上选择的模式,但我无法弄清楚。

I tried mixing different states and re-positioning them, but still not working. I tried to put an specific tab on a selected mode but I could not figure it out.

推荐答案

我想通了自己,而不是在一个标准的方式!
因为我需要像背景渐变我所选选项卡上,我的指标,并强调这样的:

I figured it out myself, but not in a standard way! Since I needed a gradient like background on my selected tab, I used indicator and underline like this:

<com.astuetz.PagerSlidingTabStrip
    android:id="@+id/tabs"
    android:layout_width="match_parent"
    android:layout_height="48dip"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:background="@drawable/tab_back"
    app1:pstsUnderlineHeight="24dip"
    app1:pstsIndicatorHeight="48dip"
    app1:pstsIndicatorColor="#e7e7e7"
    app1:pstsShouldExpand="true" />

这篇关于安卓:ViewPager - PagerSlidingTabStrip,对state_selected自定义选项卡背景的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆