package net.simplifiedcoding.androidtablayout.Activity;
import android.content.Context;
import android.graphics.Color;
import android.graphics.PorterDuff;
import android.support.design.widget.TabLayout;
import android.support.v4.app.Fragment;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Adapter;
import android.widget.Button;
import android.widget.Toast;
import com.astuetz.PagerSlidingTabStrip;
import net.simplifiedcoding.androidtablayout.Adapter.Pager;
import net.simplifiedcoding.androidtablayout.R;
import java.util.Vector;
//Implementing the interface OnTabSelectedListener to our MainActivity
//This interface would help in swiping views
public class MainActivity extends AppCompatActivity implements TabLayout.OnTabSelectedListener {
Context context;
//#
final int[] icons = new int[]{R.drawable.homeicon, R.drawable.searchicoon, R.drawable.uploadicon, R.drawable.usericon};
//This is our tablayout
private TabLayout tabLayout;
//This is our viewPager
private ViewPager viewPager;
Button optionmenu;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
//Adding toolbar to the activity
//Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
//setSupportActionBar(toolba
//Initializing the tablayout
tabLayout = (TabLayout) findViewById(R.id.tabLayout);
viewPager = (ViewPager) findViewById(R.id.pager);
tabLayout.setTabGravity(TabLayout.GRAVITY_FILL);
final PagerSlidingTabStrip tabStrip=(PagerSlidingTabStrip)findViewById(R.id.pagerslidingtabstrip);
//tabStrip.setViewPager(Pager);
//Adding the tabs using addTab() method
tabLayout.addTab(tabLayout.newTab().setText(""));
tabLayout.addTab(tabLayout.newTab().setText(""));
tabLayout.addTab(tabLayout.newTab().setText(""));
tabLayout.addTab(tabLayout.newTab().setText(""));
tabLayout.getTabAt(0).setIcon(icons[0]);
tabLayout.getTabAt(1).setIcon(icons[1]);
tabLayout.getTabAt(2).setIcon(icons[2]);
tabLayout.getTabAt(3).setIcon(icons[3]);
tabLayout.getTabAt(0).getIcon().setColorFilter(Color.WHITE, PorterDuff.Mode.SRC_IN);
tabLayout.getTabAt(1).getIcon().setColorFilter(Color.parseColor("#a8a8a8"), PorterDuff.Mode.SRC_IN);
tabLayout.getTabAt(2).getIcon().setColorFilter(Color.parseColor("#a8a8a8"), PorterDuff.Mode.SRC_IN);
tabLayout.getTabAt(3).getIcon().setColorFilter(Color.parseColor("#a8a8a8"), PorterDuff.Mode.SRC_IN);
//Initializing viewPager
//Creating our pager adapter
Pager adapter = new Pager(getSupportFragmentManager(), tabLayout.getTabCount());
//Adding adapter to pager
viewPager.setAdapter(adapter);
//tabLayout.setupWithViewPager(viewPager);
// tabStrip.setOnPageChangeListener((ViewPager.OnPageChangeListener) this);
viewPager.setCurrentItem(0);
viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
//tabLayout.setupWithViewPager(viewPager);
//tabLayout.setScrollIndicators(position);
//tabStrip.setViewPager(viewPager);
//tabLayout.setScrollIndicators(position);
}
@Override
public void onPageSelected(int position) {
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
tabLayout.setOnTabSelectedListener(this);
}
@Override
public void onTabSelected(TabLayout.Tab tab) {
viewPager.setCurrentItem(tab.getPosition());
// super.onTabSelected(tab);
tab.getIcon().setColorFilter(Color.WHITE, PorterDuff.Mode.SRC_IN);
//int tabIconColor = ContextCompat.getColor(context, R.color.tabselectedIconcolor);
//tab.getIcon().setColorFilter(tabIconColor, PorterDuff.Mode.SRC_IN);
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
tab.getIcon().setColorFilter(Color.parseColor("#a8a8a8"), PorterDuff.Mode.SRC_IN);
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
}
}
<LinearLayout
android:id="@+id/main_layout"
android:orientation="vertical"
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:background="@color/colorPrimary"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".Activity.MainActivity">
<!-- our toolbar -->
<!-- our tablayout to display tabs -->
<Toolbar
android:layout_width="match_parent"
android:layout_height="10dp"
android:background="@color/colorPrimary">
</Toolbar>
<android.support.design.widget.TabLayout
android:id="@+id/tabLayout"
android:layout_marginTop="4dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:tabIndicatorColor="#ffffff"
app:tabIndicatorHeight="3dp"
android:background="?attr/colorPrimary"
android:minHeight="?attr/actionBarSize"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"/>
<!-- View pager to swipe views -->
<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:background="@color/colorPrimary"
android:layout_width="match_parent"
android:layout_height="fill_parent">
<com.astuetz.PagerSlidingTabStrip
android:id="@+id/pagerslidingtabstrip"
android:layout_width="match_parent"
android:layout_height="0dip" />
</android.support.v4.view.ViewPager>
H
</LinearLayout>
내가 Tabsrtip.setupwithviewpager을 을 사용 .When이 내 레이아웃 파일입니다 rosource 파일의 오류를 보여줍니다. 또는 애플리케이션이 불행하게도 중지되었습니다. tablayout.setupwithviewpager 을 사용했는데 오류도 표시됩니다. Beloy가 내 Java 파일입니다. ViewPager 어댑터탭 표시는 탭이나 단편 움직이지 액션 바
@Override
public CharSequence getPageTitle(int position) {
return tabText[position];
}
@Override
public int getCount() {
return 2;
}
tabText = new String[]{
"Tab 1",
"Tab 2"
};
프로그램 tabLayout에 탭을 추가 할 필요가 없습니다에 getPageTitle 기능을이 라인을
tabLayout = (TabLayout) findViewById(R.id.tabLayout);
viewPager = (ViewPager) findViewById(R.id.pager);
Pager adapter = new Pager(getSupportFragmentManager(),tabLayout.getTabCount());
viewPager.setAdapter(adapter);
tabLayout .setupWithViewPager(viewPager);
을 추가하고 우선하여 viewpager와
나는 이렇게 생각할 수 있다고 생각합니다. 이 링크를 참조하십시오 .http : //www.androidhive.info/2015/09/android-material-design-working-with-tabs/ –
그리고 logcat을 게시하십시오. –