标签: android-tablayout

如何从设计支持android嵌入标签布局中的字体

我想在设计支持库的tablayout中嵌入自定义字体.我尝试设置已设置字体的自定义视图.但它没有用.只是出现系统字体.

我做的是,

mAdpater = new CustomPagerAdapter(getSupportFragmentManager());
mFragmentPager.setAdapter(mAdpater);
mTabs.setupWithViewPager(mFragmentPager);
Typeface tf = Typeface.createFromAsset(getAssets(), "fonts/myFont.ttf");
for (int i = 0; i < mTabs.getTabCount(); i++) {
    TextView tv = new TextView(this);
    tv.setText(mAdpater.getPageTitle(i));
    tv.setTypeface(tf);
    mTabs.getTabAt(i).setCustomView(tv);
}
Run Code Online (Sandbox Code Playgroud)

欢迎任何建议.

android font-embedding android-tablayout

3
推荐指数
1
解决办法
5721
查看次数

仅使用图标设计支持库选项卡

我正在使用设计支持库来创建选项卡.默认情况下,它会创建带文本的选项 如何创建仅带图标的标签?此外,如果它是当前选定的选项卡,我想更改图标颜色.

在此输入图像描述

tabs android android-tablayout

3
推荐指数
1
解决办法
4463
查看次数

如何在android中适应选项卡宽度屏幕

我使用android支持库实现选项卡布局,它看起来像

在此输入图像描述

这里标签宽度不适合屏幕,我的布局是

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">


    <android.support.design.widget.TabLayout
        android:id="@+id/sliding_tabs"

        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:tabMode="scrollable" />

    <android.support.v4.view.ViewPager
        android:id="@+id/viewpager"
        android:layout_width="match_parent"
        android:layout_height="0px"
        android:layout_weight="1"
        android:background="@android:color/white" />

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

android android-support-library android-tablayout

3
推荐指数
2
解决办法
3688
查看次数

得到类android.support.design.widget.TabLayout的错误

我正在尝试使用Eclipse创建基于Google"材料设计"的菜单选项卡,但是我收到了一个错误:

    01-07 01:02:10.238: E/tag(6696): contact on create called
    01-07 01:02:10.301: E/AndroidRuntime(6696): FATAL EXCEPTION: main
    01-07 01:02:10.301: E/AndroidRuntime(6696): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.rvappsstudios.designflashalerts/com.rvappsstudios.designflashalerts.MainActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.rvappsstudios.designflashalerts/com.rvappsstudios.designflashalerts.Contact_mainfragment}: android.view.InflateException: Binary XML file line #8: Error inflating class android.support.design.widget.TabLayout
    01-07 01:02:10.301: E/AndroidRuntime(6696):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2343)
    01-07 01:02:10.301: E/AndroidRuntime(6696):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2395)
    01-07 01:02:10.301: E/AndroidRuntime(6696):     at android.app.ActivityThread.access$600(ActivityThread.java:162)
    01-07 01:02:10.301: E/AndroidRuntime(6696):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364)
    01-07 01:02:10.301: E/AndroidRuntime(6696):     at android.os.Handler.dispatchMessage(Handler.java:107)
    01-07 01:02:10.301: E/AndroidRuntime(6696):     at android.os.Looper.loop(Looper.java:194)
    01-07 01:02:10.301: E/AndroidRuntime(6696):     at android.app.ActivityThread.main(ActivityThread.java:5371)
    01-07 01:02:10.301: E/AndroidRuntime(6696):     at java.lang.reflect.Method.invokeNative(Native Method) …
Run Code Online (Sandbox Code Playgroud)

eclipse android android-support-design android-tablayout

3
推荐指数
1
解决办法
7946
查看次数

如何使用设计库选项卡布局更改工具栏标题?

我正在使用设计库支持TabLayout,我试图在Tab被按下或ViewPager被滑动时更改工具栏的标题.但到目前为止无法取得任何成功.这是以下代码: -

public class ActivityHomePage extends AppCompatActivity {
    private TabLayout tabLayout;
    private ViewPager viewPager;
    Toolbar toolbar;
    DesignDemoPagerAdapter adapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_homepage);

        toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);
        getSupportActionBar().setDisplayShowTitleEnabled(false);




        viewPager = (ViewPager) findViewById(R.id.viewpager);
        setupViewPager(viewPager);
      //  viewPager.getAdapter().getPageTitle();
        tabLayout = (TabLayout) findViewById(R.id.tablayout);
        tabLayout.setupWithViewPager(viewPager);
        setupTabIcons();


    }
    private int[] tabIcons = {

            R.drawable.ic_action_star,
            R.drawable.ic_action_heart,
            R.drawable.ic_action_square
    };
    private void setupViewPager(ViewPager viewPager) {
        adapter = new DesignDemoPagerAdapter(getSupportFragmentManager());

        adapter.addFrag(new FragmentStar(), "star");
        adapter.addFrag(new FragmentHeart(), "heart");
        adapter.addFrag(new FragmentSquare(), "square");
        viewPager.setAdapter(adapter);



    }



    @Override
    public boolean onCreateOptionsMenu(Menu menu) …
Run Code Online (Sandbox Code Playgroud)

android material-design android-design-library android-tablayout

3
推荐指数
1
解决办法
5358
查看次数

Android选项卡活动底部关闭屏幕

任何人都知道为什么在Android中新生成的选项卡式活动中底部是否在屏幕外?

新活动

ViewPager对于整个屏幕来说太长了

    <android.support.v4.view.ViewPager
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    app:layout_behavior="@string/appbar_scrolling_view_behavior" />
Run Code Online (Sandbox Code Playgroud)

容器太长了

如果您将它们对齐到屏幕底部,则55dp中的子片段中的所有视图都不在屏幕上.

谢谢,

保罗

PS:生成代码的完整XML:

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/main_content"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:context="com.comfylight.bulbtest.FooBar">

    <android.support.design.widget.AppBarLayout
        android:id="@+id/appbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingTop="@dimen/appbar_padding_top"
        android:theme="@style/AppTheme.NoActionBar.AppBarOverlay">

        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:layout_scrollFlags="scroll|enterAlways"
            app:popupTheme="@style/AppTheme.NoActionBar.PopupOverlay">

        </android.support.v7.widget.Toolbar>

        <android.support.design.widget.TabLayout
            android:id="@+id/tabs"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

    </android.support.design.widget.AppBarLayout>

    <android.support.v4.view.ViewPager
        android:id="@+id/container"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layout_behavior="@string/appbar_scrolling_view_behavior" />

    <android.support.design.widget.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="end|bottom"
        android:layout_margin="@dimen/fab_margin"
        android:src="@android:drawable/ic_dialog_email" />

</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)

java android android-viewpager android-coordinatorlayout android-tablayout

3
推荐指数
1
解决办法
1122
查看次数

更改所选标签的图标

我按如下方式设置tablayout,

 private void setupTabIcons() {

        TextView tabOne = (TextView) LayoutInflater.from(this).inflate(R.layout.custom_tab, null);
        tabOne.setText("Status");
        tabOne.setCompoundDrawablesWithIntrinsicBounds(0, R.drawable.status, 0, 0);
        tabLayout.getTabAt(0).setCustomView(tabOne);

        TextView tabTwo = (TextView) LayoutInflater.from(this).inflate(R.layout.custom_tab, null);
        tabTwo.setText("Rating");
        tabTwo.setCompoundDrawablesWithIntrinsicBounds(0, R.drawable.rateit, 0, 0);
        tabLayout.getTabAt(1).setCustomView(tabTwo);
}
Run Code Online (Sandbox Code Playgroud)

如何更改所选标签的图标?即时通讯使用tablayout.

android android-tablayout

3
推荐指数
1
解决办法
4175
查看次数

在android中隐藏Tablayout Bar

我有一个活动toolbar,Tablayout,viewpager 与这样的片段

在此输入图像描述 我想toolbar对所有片段实施 材料搜索

像那样 在此输入图像描述

但问题是TAB Bar. 我想在搜索打开时隐藏标签栏(呼叫,聊天,联系人),并在搜索关闭时取消隐藏它

如何隐藏标签栏?

我正在使用库进行材料搜索视图实现

布局代码如下

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
   >

    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme.AppBarOverlay">
        <FrameLayout
            android:id="@+id/toolbar_container"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"

            android:minHeight="?attr/actionBarSize"
            app:popupTheme="@style/AppTheme.PopupOverlay" />

        <com.miguelcatalan.materialsearchview.MaterialSearchView
            android:id="@+id/search_view"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

        </FrameLayout>

        <android.support.design.widget.TabLayout
            android:id="@+id/tabs"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            app:tabMode="scrollable"
            app:tabGravity="center"/>

    </android.support.design.widget.AppBarLayout>

    <include layout="@layout/content_dashboard" />


</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)

mobile android android-fragments android-viewpager android-tablayout

3
推荐指数
1
解决办法
3234
查看次数

NestedScrollView里面的Fragment(Viewpager)没有加载

我有片段与布局CoordinatorLayout与内部NestedScrollView和内nestedscrollview我有ViewPagerTabLayout同片段.标签是可见的,但与标签相关的片段未加载.

可见选项卡但不是片段

布局

                                                                                                            <?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:clickable="true"
    android:background="?android:attr/colorBackground"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <android.support.design.widget.AppBarLayout
        android:id="@+id/app_bar_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <android.support.design.widget.CollapsingToolbarLayout
            android:id="@+id/collapsing_toolbar"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            app:layout_scrollFlags="scroll|exitUntilCollapsed">
            <!--app:contentScrim="?attr/colorPrimary" -->


          <android.support.v4.view.ViewPager
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:id="@+id/ViewPagerImages"
              app:layout_collapseMode="parallax"
              app:layout_collapseParallaxMultiplier="0.7"
              android:scrollIndicators="top|right">

          </android.support.v4.view.ViewPager>


            <ProgressBar
                android:layout_width="120dp"
                android:layout_height="120dp"
                android:id="@+id/Progress_Bar_Image"
                android:layout_gravity="center_horizontal|center_vertical"
                android:visibility="visible"
                 />

            <LinearLayout
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="horizontal"
                android:layout_gravity="right|top"
                android:layout_marginRight="30dp"
                android:layout_marginTop="30dp"
                android:background="@drawable/round_default"
                >
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:textSize="25sp"
                    android:text="1"/>
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:textSize="25sp"
                        android:text="/5"/>


            </LinearLayout>
            <RelativeLayout
                android:layout_width="wrap_content"
                android:layout_height="200dp"
                android:layout_gravity="bottom"
                android:padding="15dp"
                >
                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:id="@+id/unsa"
                    android:orientation="horizontal"
                    android:gravity="center">
                    <ImageView
                        android:id="@+id/user_S" …
Run Code Online (Sandbox Code Playgroud)

android adapter android-fragments android-viewpager android-tablayout

3
推荐指数
1
解决办法
2364
查看次数

在TabLayout中的片段之间滑动变慢

我有一个使用viewpager设置TabLayout.viewpager设置了适配器.向适配器添加了11个片段,每个片段都有一个recyclerview.当我运行应用程序时,在片段之间滑动变慢.谁能告诉我这个问题的原因?

我的主要活动:

    myTabLayout.setTabMode(TabLayout.MODE_SCROLLABLE);


    mainViewPager = (ViewPager) findViewById(R.id.mainViewPager);
    tabLayoutAdapter = new TabLayoutAdapter(getSupportFragmentManager());
    tabLayoutAdapter.addFragment(new HomeFragment());
    tabLayoutAdapter.addFragment(new ClipFragment());
    tabLayoutAdapter.addFragment(new MovieFragment());
    tabLayoutAdapter.addFragment(new SerialFragment());
    tabLayoutAdapter.addFragment(new MusicFragment());
    tabLayoutAdapter.addFragment(new BookFragment());
    tabLayoutAdapter.addFragment(new PixFragment());
    tabLayoutAdapter.addFragment(new GameFragment());
    tabLayoutAdapter.addFragment(new NewsFragment());
    tabLayoutAdapter.addFragment(new LiveFragment());
    tabLayoutAdapter.addFragment(new AdvancedSearchFragment());
    mainViewPager.setAdapter(tabLayoutAdapter);
    myTabLayout.setupWithViewPager(mainViewPager);
Run Code Online (Sandbox Code Playgroud)

我的适配器:

public class TabLayoutAdapter extends FragmentStatePagerAdapter {
List<Fragment> tabPages = new ArrayList<>();

public TabLayoutAdapter(FragmentManager fm) {
    super(fm);
}

@Override
public Fragment getItem(int position) {
    return tabPages.get(position);
}

@Override
public int getCount() {
    return tabPages.size();
}

public void addFragment(Fragment page){
    tabPages.add(page);
}
Run Code Online (Sandbox Code Playgroud)

}

样本片段:

public class …
Run Code Online (Sandbox Code Playgroud)

android android-fragments android-viewpager android-tablayout

3
推荐指数
1
解决办法
905
查看次数