有哪些设计网站,做海报网站,建设银行官方网站手机版下载安装,别墅室内设计效果图初次使用xtablayout和viewpaper2.所以就弄了最基础的导航条一、效果二、代码配置环境【在bulid.gradle中添加以下代码】implementation ‘androidx.viewpager2:viewpager2:1.0.0-alpha02‘implementation‘com.androidkun:XTabLayout:1.1.4‘按钮点击切换图片【几个点击按钮图片…初次使用xtablayout和viewpaper2.所以就弄了最基础的导航条一、效果二、代码配置环境【在bulid.gradle中添加以下代码】implementation ‘androidx.viewpager2:viewpager2:1.0.0-alpha02‘implementation‘com.androidkun:XTabLayout:1.1.4‘按钮点击切换图片【几个点击按钮图片几个这样的布局】主页布局代码android:idid/pagersandroid:layout_widthmatch_parentandroid:layout_height0dpandroid:layout_weight1android:orientationhorizontal/android:idid/tabandroid:layout_widthmatch_parentandroid:layout_height100dpapp:xTabModefixedapp:xTabTextSize15spapp:xTabTextColorcolor/colorThemeTextapp:xTabSelectedTextColorcolor/colorThemeapp:xTabSelectedTextSize20sp /xtablyout属性说明字体xTabTextSize默认按钮字体大小【未点击时】xTabTextColor默认字体颜色【未点击时】xTabSelectedTextColor选中时字体的大小xTabSelectedTextSize选中时的字体颜色xTabTextSelectedBoldtrue设置选中Tab的文本是否粗体显示app:xTabTextBoldtrue设置未选中Tab的文本是否粗体显示指示器设置xTabDisplayNum设置屏幕内显示Tab个数xTabDividerWidthWidthTexttrue设置指示器长度随文本改变xTabMode设置按钮是否可以滑动【注意是按钮不是页面】背景色xTabBackgroundColor默认按钮背景色xTabSelectedBackgroundColor选中按钮背景色分割线xTabDividerWidth宽度xTabDividerHeight高度xTabDividerColor颜色xTabDividerGravity是否居中Fragement【都是这样这里就显示一个】android:orientationvertical android:layout_widthmatch_parentandroid:layout_heightmatch_parentandroid:text第一页android:layout_widthmatch_parentandroid:layout_heightmatch_parent/主页Java代码package com.example.mslinbill.main;import androidx.annotation.NonNull;import androidx.appcompat.app.AppCompatActivity;import androidx.fragment.app.Fragment;import androidx.viewpager2.adapter.FragmentStateAdapter;import androidx.viewpager2.widget.ViewPager2;import android.os.Bundle;import android.widget.Toast;import com.androidkun.xtablayout.XTabLayout;import com.example.mslinbill.R;import com.example.mslinbill.fragment.SubPage_BookKeeping_Fragment;import com.example.mslinbill.fragment.SubPage_Wages_Fragment;import java.util.ArrayList;import java.util.List;public class MainActivity extends AppCompatActivity {//XTabLayoutXTabLayout tab;ViewPager2 pagers;List list new ArrayList();Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);/*** XTabLayout的操作*///1.找到XTablayouttab findViewById(R.id.tab);pagers findViewById(R.id.pagers);//2.动态添加内容后面的图片根据前面的图片选中设置tab.addTab(tab.newTab().setText(第一页).setIcon(R.drawable.tab_bookkeep));tab.addTab(tab.newTab().setText(第二页).setIcon(R.drawable.tab_wages));//3.设置切换效果tab.setOnTabSelectedListener(new XTabLayout.OnTabSelectedListener() {//当前选中的TabOverridepublic void onTabSelected(XTabLayout.Tab tab) {//获取当前导航卡的位置及文本int position tab.getPosition();pagers.setCurrentItem(position);//提示词Toast.makeText(MainActivity.this,position---tab.getText().toString(), Toast.LENGTH_SHORT).show();}//Tab没被选中的方法Overridepublic void onTabUnselected(XTabLayout.Tab tab) {}//Tab被重新选中的方法Overridepublic void onTabReselected(XTabLayout.Tab tab) {}});//添加FragementaddFragement();pagers.setAdapter(new FragmentStateAdapter(getSupportFragmentManager()) {NonNullOverridepublic Fragment getItem(int position) {return list.get(position);}//设置长度Overridepublic int getItemCount() {return list.size();}});//禁止滑动// pagers.setUserInputEnabled(false);/*** 官方说法添加回调* 自我理解连动按钮和页面*/pagers.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() {Overridepublic void onPageSelected(int position) {super.onPageSelected(position);//设置指定位置上的导航块被选中tab.getTabAt(position).select();}});}//添加Fragementprivate void addFragement(){//添加Fragmentlist.add(new Fragment1());list.add(new Fragment2());}}Fragement代码public class Fragment1 extends Fragment {NullableOverridepublic View onCreateView(NonNull LayoutInflater inflater, Nullable ViewGroup container, Nullable Bundle savedInstanceState) {return inflater.inflate(R.layout.subpapge1 container, false);}}原文https://www.cnblogs.com/hahayixiao/p/13725960.html