Android Sliding Tabs - 修改示例项目

时间:2014-12-28 14:33:10

标签: java android xml android-layout android-studio

我正在尝试创建一个滑动标签应用程序,如下面屏幕截图中的那个,尽管由于缺少可用的样本,这个是我能找到的最接近我想要实现的目标。

如果有人能帮我跟进,我将非常感激:

  1. 需要删除哪些Java代码才能安全地删除底部的颜色选择器+需要替换它的代码,以便我可以使用我选择的十六进制颜色作为操作栏,指示器颜色,Tab标题,标签背景和标签分隔符。
  2. 需要更改哪些代码(Java和/或XML),以便我可以使用自己的XML片段文件而不是这些“卡片”。
  3. 非常感谢所有帮助,因为实际上没有样本项目可以实现我想要实现的目标。

    我打算修改的示例项目的链接如下。

    LINK: astuetz/PagerSlidingTabStrip · GitHub

    Sliding tabs goal

    标签

    tabs

    slidingTabs& my_tab_text_view

    tabs n text

1 个答案:

答案 0 :(得分:1)

对于您自己的片段,您是否看过ViewPagerhttp://developer.android.com/training/animation/screen-slide.html

另请查看android示例代码:https://developer.android.com/samples/SlidingTabsBasic/index.html

用于控制actionBar:查看新的ToolBar api https://chris.banes.me/2014/10/17/appcompat-v21/

之后,如果您仍有疑问,欢迎提出问题

 slidingTabLayout = (SlidingTabLayout) findViewById(R.id.sliding_tabs);
 slidingTabLayout.setDividerColors(getResources().getColor(android.R.color.transparent));
 slidingTabLayout.setSelectedIndicatorColors(getResources().getColor(android.R.color.white));

将此方法添加到SlidingTabLayout

public class SlidingTabLayout extends HorizontalScrollView {



    /**
    * #####################Add THIS METHOD ############
    *
    * @param layoutResId Layout id to be inflated
    * @param textViewId  id of the {@link TextView} in the inflated view
    */
   public void setCustomTabView (int layoutResId, int textViewId) {
       mTabViewLayoutId = layoutResId;
       mTabViewTextViewId = textViewId;
   }
...
}

来自您的活动:

public void onCreate(){
    slidingTabs.setCustomTabView(0, R.layout.my_tab_text_view)
}

其中my_tab_text_view是布局文件:

<TextView

          android:layout_width="0dp"
          android:layout_height="wrap_content"
          android:layout_weight="1"/>

确保宽度为0且重量为1