无法使用TabLayout

问题描述 投票:0回答:1

我已经在一个Android应用程序的XML文件中制作了TabLayout。像那样

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

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

现在我试图在java文件中访问TabLayout,但我无法这样做。请看附件快照并帮助我,我误解了。请帮助我。

Snapshot from code file

android xml tabs
1个回答
2
投票

使用TabLayout您需要做的第一件事是在应用程序的build.gradle文件的依赖项中包含Design Support Library:

compile 'com.android.support:support-v4:25.3.1' 
compile 'com.android.support:design:25.3.1'

在活动布局(activity_tab_layout.xml)中,我们放置了一个TabLayout小部件和一个ViewPager:

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

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

<android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/pager"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="net.voidynullness.android.tabitytabs.TabLayoutActivity">

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

现在里面各自的活动说TabLayoutActivity.java添加下面的代码

   import android.os.Bundle;
   import android.support.design.widget.TabLayout;
   import android.support.v4.view.ViewPager;
   import android.support.v7.app.AppCompatActivity;


    public class TabLayoutActivity extends AppCompatActivity {
       TabLayout tabs ;
       ViewPager pager;
       TabsPagerAdapter adapter;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_tab_layout);

       tabs = (TabLayout) findViewById(R.id.tabs);
       pager = (ViewPager) findViewById(R.id.pager);
       adapter = new TabsPagerAdapter(getSupportFragmentManager());
       pager.setAdapter(adapter);
       tabs.setupWithViewPager(pager);
  }
}

并运行它将为你工​​作

© www.soinside.com 2019 - 2024. All rights reserved.