Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android PagerTabStrip中的一些问题和难点_Android_Tabs_Android Viewpager - Fatal编程技术网

Android PagerTabStrip中的一些问题和难点

Android PagerTabStrip中的一些问题和难点,android,tabs,android-viewpager,Android,Tabs,Android Viewpager,我已经实现了一个可滚动的标签+滑动,一切正常。 但是,我有一些与当前页面相关的问题: 1.我无法将当前标题加粗 2。无法选择渲染视图时要显示的默认选项卡(例如:位置为2的选项卡),如Google Play应用程序中的选项卡 3.第一个选项卡和最后一个选项卡的左侧和右侧分别有一个边距,我可以将其设置为0dp吗 以下是我可以为选项卡设置样式的方法: 爪哇: strip = (PagerTabStrip) findViewById(R.id.pager_tab_strip); strip.setTab

我已经实现了一个可滚动的标签+滑动,一切正常。 但是,我有一些与当前页面相关的问题:

1.我无法将当前标题加粗

2。无法选择渲染视图时要显示的默认选项卡(例如:位置为2的选项卡),如Google Play应用程序中的选项卡

3.第一个选项卡和最后一个选项卡的左侧和右侧分别有一个边距,我可以将其设置为0dp吗

以下是我可以为选项卡设置样式的方法:

爪哇:

strip = (PagerTabStrip) findViewById(R.id.pager_tab_strip);
strip.setTabIndicatorColorResource(R.color.light_blue);
strip.setDrawFullUnderline(true);
布局:

<android.support.v4.view.PagerTabStrip
    android:id="@+id/pager_tab_strip"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="top"
    android:background="@drawable/pagertitle_border_bottom"
    android:paddingBottom="15dp"
    android:paddingTop="15dp"
    android:textColor="@color/light_blue" />


有谁能帮我记下这三点吗?谢谢。

事实上,我找到了一个合适的解决方案。忘记
PagerTabStrip
;)

很显然,谷歌发布了一个新的应用程序,它的特点就是他们在谷歌Play应用程序中使用的源代码。它非常容易使用。下载示例应用程序并从中复制两个文件:
SlidingTabLayout.java
SlidingTabStrip.java

然后在布局XML中,在
ViewPager
上方添加以下内容(将
com.example
更改为包名):

slidengtablayout
的API允许您轻松进行基本样式设置,如更改选项卡颜色、分隔符颜色、指示器颜色等

还有一件更重要的事,谷歌提供的
SlidingTableOut
在你有很多标签的情况下运行良好。但是,例如,如果您有三个选项卡,您将看到所有选项卡都向左对齐,并且最后一个选项卡与视图宽度之间有很大的间隙。

要克服这一问题,请在
TextView TextView=new TextView(上下文)下的第173行后面修改
SlidingTabLayout.java
添加以下行:

textView.setLayoutParams(新的LinearLayout.LayoutParams(0,LinearLayout.LayoutParams.WRAP_CONTENT,1f))

现在,选项卡之间的空间将被正确划分:
看看这个。这家伙非常清楚地解释了如何使用滑动选项卡布局

任何定制


更改slidengtablayout.java类中的代码

你找到解决方案了吗?@CodePond.org:实际上没有,使用这个小部件。我发现的唯一解决方案是创建自己的寻呼机:标题滚动视图和SpPE内容视图监听器……请考虑我建议的答案。
<com.example.SlidingTabLayout
        android:id="@+id/sliding_tabs"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>

<android.support.v4.view.ViewPager
        android:id="@+id/pager"
        android:layout_marginTop="5dp"
        android:layout_weight="1.5"
        android:layout_width="match_parent"
        android:background="@android:color/white"
        android:layout_height="0dp"/>
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mViewPager = (ViewPager) findViewById(R.id.pager);
        mViewPager.setAdapter(new GridPagerAdapter(getSupportFragmentManager()));
        // Initialize the SlidingTabLayout. Note that the order is important. First init ViewPager and Adapter and only then init SlidingTabLayout
        mSlidingTabLayout = (SlidingTabLayout) findViewById(R.id.sliding_tabs);
        mSlidingTabLayout.setViewPager(mViewPager);
    }