在具有多行标题的选项卡上设置片段
Set Fragment on Tab with multi line title
我正在处理在选项卡上设置的两个片段。
我有两个问题:
- 我想将片段的标题设置为多行而不是“...”
这是添加片段并设置其标题的代码
ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager());
adapter.addFragment(new OneFragment(), "Current\nSubscription");
- 我想从选项卡上的图标和文本周围删除多余的 space 以使其更紧凑并节省一些 space。
尝试使用以下代码设置您的 TabLayout
标题
TextView tabOne = new TextView(this);
tabOne.setText("Current"+ System.getProperty("line.separator") +"Subscription");
tabOne.setCompoundDrawablesWithIntrinsicBounds(0, R.drawable.ic_tab_favourite, 0, 0);
tabLayout.getTabAt(0).setCustomView(tabOne);
在选项卡标题中显示“...”不会带来良好的 UI 体验我建议您应该将选项卡模式设置为可滚动,并让选项卡标题随心所欲 space。
<android.support.design.widget.TabLayout
android:id="@+id/htab_tabs"
android:layout_width="wrap_content"
android:layout_height="?attr/actionBarSize"
android:layout_gravity="bottom"
app:tabIndicatorColor="@android:color/white"
app:tabMode="scrollable" />
我正在处理在选项卡上设置的两个片段。
我有两个问题:
- 我想将片段的标题设置为多行而不是“...”
这是添加片段并设置其标题的代码
ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager());
adapter.addFragment(new OneFragment(), "Current\nSubscription");
- 我想从选项卡上的图标和文本周围删除多余的 space 以使其更紧凑并节省一些 space。
尝试使用以下代码设置您的 TabLayout
标题
TextView tabOne = new TextView(this);
tabOne.setText("Current"+ System.getProperty("line.separator") +"Subscription");
tabOne.setCompoundDrawablesWithIntrinsicBounds(0, R.drawable.ic_tab_favourite, 0, 0);
tabLayout.getTabAt(0).setCustomView(tabOne);
在选项卡标题中显示“...”不会带来良好的 UI 体验我建议您应该将选项卡模式设置为可滚动,并让选项卡标题随心所欲 space。
<android.support.design.widget.TabLayout
android:id="@+id/htab_tabs"
android:layout_width="wrap_content"
android:layout_height="?attr/actionBarSize"
android:layout_gravity="bottom"
app:tabIndicatorColor="@android:color/white"
app:tabMode="scrollable" />