Articles of android tablayout

PagerTabStrip和TabLayout之间的区别

我正在开发一个应用程序,我想添加标签,以便可以使用PagerTabStrip和TabLayout与ViewPager一起添加。 它看起来和我没什么区别,但我猜它们之间有一些区别所以它们是两个类。 那么它们之间的主要区别是什么?

设计支持TabLayout

我正在玩设计支持库TabLayout。 我的问题是其中一个标签的标题太长,因此,它是在2行而不是1上绘制的。我想知道是否有一种方法缩放标题文本大小以确保所有标题都在1行上绘制。 这是一个截图,以更好地解释我的问题: 如果细节很重要,我正在使用Design Support TabLayout,一个ViewPager和一个FragmentPagerAdapter来填充我的标签。 提前致谢!

Android中的导航抽屉和VideoView

我正在使用导航抽屉和tablayout。 我的标签中有一个video,一开始看不到,但我能听到声音。 一旦我设定 video_view.setZOrderOnTop(true); 我也可以看到video,但这会导致导航抽屉出现问题 。 当我滑动它时,video不会像所有其他元素一样隐藏在导航抽屉后面。 如果我不使用 video_view.setZOrderOnTop(true); 然后我的抽屉工作正常。 main_activity.xml tab_fragment.xml TabFragment.java @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment final View view = inflater.inflate(R.layout.tab_fragment, container, false); VideoView video_player_view = (VideoView) view.findViewById(R.id.video_player_view); video_player_view.setVideoURI(“videourl”); video_player_view.setZOrderOnTop(true); video_player_view.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { @Override public void onPrepared(MediaPlayer mp) { video_player_view.start(); } […]

Android:将TabLayout固定到Scrollview的顶部

我正在看手机上的推特应用程序。 您可以看到,当用户向上滚动时,tabLayout实际上只是很好地将自己固定在工具栏的底部并且根本不移动。 我想也许他们通过将应用程序的所有顶部(配置文件图片,自行车的配置文件壁纸,草地,文本)放入CollapsingToolBarLayout和AppBarLayout,但实际上只有配置文件壁纸草地上的自行车是CollapsingToolBarLayout和AppBarLayout的一部分,因为这是实际崩溃的唯一部分。 文本部分向上滚动,tabLayout只是在工具栏下方的顶部。 我在twitter应用程序上阅读了这些信用点,看起来他们使用SlidingTabLayout来实现它们的效果。 SlidingTabLayout类似于tabLayout,后者在支持库中受支持。 它看起来像现在主流应用程序使用的相当常见的模式 – Google+应用在应用的个人资料视图中使用它: Facebook Moments在他们的应用中使用它: 知道他们是怎么做的都设法做到了吗? 我正在寻找类似于所有这些应用程序的东西。 我的要求是: 滚动时有一个collapsingToolBarLayout崩溃 在collapsingToolBarLayout下面有一个textview,当它完全折叠时会在toolBar下面滚动和“隐藏”。 当你在collapsingToolBarLayout下滚动textview时,在textview下面有一个tabLayout,它会“粘住”tabLayout。 在tabLayout下面有一个recyclerview,这样当你点击tabLayout中的每个标签时,recyclerview将在“推文”,“照片”,“collections夹”等列表之间切换。 我查看了SO上发布的另外两个问题: TabLayout的标签选择指示器在滚动时是否可以固定在屏幕顶部? 。 这里的答案似乎是改变tabLayout的行为,但我怀疑改变行为实际上会生成twitter应用程序的function。 正如我所提到的,tabLayout似乎位于CollapsingToolBarLayout和AppBarLayout之外,只有当它位于CollapsingToolBarLayout和AppBarLayout中时,行为才有效。 如何在ScrollView顶部固定TabLaout? 。 这个问题与我提出的问题类似,但没有提供足够的细节,也没有答案。

Android标签布局:相对于标签标题包裹标签指示符宽度

是否有任何方法可以相对于标题标题包裹标签指示符宽度?

android.support.design.widget.TabLayout以编程方式选择Tab

我正在使用android.support.design.widget.TabLayout。 它有两个选项卡,如果用户选择第二个选项卡在特定条件下,我希望用户重定向到第一个选项卡,并禁止他转到sencond选项卡,直到条件匹配。 为了实现这一点,我试过, tabLayout.getTabAt(0).select(); 但它没有重新选择第一个标签

TabItem放置在布局XML中时如何使用?

TabLayout文档提供了一个直接在TabLayout中嵌套TabItem的示例, TabLayout所示: 但它没有给出如何在实践中使用它的例子,TabItem的文档说: 此视图实际上并未添加到TabLayout,它只是一个虚拟对象,允许设置选项卡项的文本,图标和自定义布局。 那么TabItem是什么? 经过广泛的谷歌搜索后,我找不到任何人在XML中定义TabItems的例子。 有没有办法在资源文件中使用TabItem设置选项卡式活动,如上所示?

如何使用Android中的代码中的TabLayout更改选定的选项卡文本颜色?

我正在使用android.support.widget.TabLayout来制作一个Tab视图,我想从代码中更改所选的选项卡文本颜色(而不是从xml或通过样式)。 我怎样才能做到这一点 ?

在com.android.support:design:23.1.0中更改左侧,顶部,右侧或底部的TabLayout图标

我对Android开发很新。 所以请耐心等待。 我一直在尝试将com.android.support:design:23.1.0中的图标和文本对齐一天。 显然在com.android.support:design:23.1.0中,他们将默认图标位置更改为顶部,将文本更改为底部。 以前在com.android.support:design:23.0.1中,默认为左侧的图标,文本位于与图标相同的行中 所以这里有一个简单的方法来解决它(虽然它可能有缺点,idk tbh): change the version in your app’s build.gradle. ex: 23.1.0 to 23.0.1 and build. 还有一种更好的方法(这样你也可以在左,右,上,下对齐图标): 在res / layout中创建custom_tab.xml 2.在你的活动java中 TextView newTab = (TextView) LayoutInflater.from(this).inflate(R.layout.custom_tab, null); newTab.setText(“tab1”); //tab label txt newTab.setCompoundDrawablesWithIntrinsicBounds(your_drawable_icon_here, 0, 0, 0); tabLayout.getTabAt(tab_index_here_).setCustomView(newTab); 到目前为止,我已经实现了使图标显示在任何一侧,如下所示: PS: setCompoundDrawablesWithIntrinsicBounds函数参数是4个侧面图标,如下所示: setCompoundDrawablesWithIntrinsicBounds(leftDrawable, topDrawable, rightDrawable, bottomDrawable)

在片段中使用TabLayout; 标签文字不可见

我目前正在尝试新的Android支持设计库中的各种新组件。 我在MainActivity.java实现了一个NavigationView ,它使用FragmentManager在Navigation抽屉中的项目之间导航: getSupportFragmentManager() .beginTransaction() .replace(R.id.content, mTabLayoutFragment) .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN) .commit(); 我在其中一个片段中使用TabLayout 。 这是片段的布局: 它背后的Java代码: import android.os.Bundle; import android.support.design.widget.*; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentStatePagerAdapter; import android.support.v4.view.ViewPager; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; public class TabLayoutFragment extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View inflatedView = inflater.inflate(R.layout.fragment_tablayout, container, false); TabLayout tabLayout […]