使用Tablelayout完成RadioGroup+RadioButton效果
阿新 • • 發佈:2018-11-06
public class MainActivity extends AppCompatActivity { | |
// Glide.with(this).load("gif地址").centerCrop().into(iv_gif);//沒有加預載入 | |
//Glide.with(this).load("gif地址").) | |
// .centerCrop().placeholder(R.drawable.ic_launcher).crossFade().into(iv_gif);//有預載入 | |
private ViewPager vp; | |
private TabLayout tb; | |
ArrayList<Fragment> arrayList; | |
@Override | |
protected void onCreate(Bundle savedInstanceState) { | |
super.onCreate(savedInstanceState); | |
setContentView(R.layout.activity_main); | |
initView();
|
|
final String[] name ={"首頁","分類","發現","購物車","我的"}; | |
final int[] pic = {R.drawable.sy,R.drawable.fenlei,R.drawable.faxian,R.drawable.gouwuche,R.drawable.wode}; | |
final int[] pic2 = {R.drawable.sy2,R.drawable.fenlei2,R.drawable.faxian2,R.drawable.gouwuche2,R.drawable.wode2}; | |
tb.setupWithViewPager(vp); | |
arrayList = new ArrayList<>(); |
|
arrayList.add(new BlankFragment()); | |
arrayList.add(new BlankFragment2()); | |
arrayList.add(new BlankFragment3()); | |
arrayList.add(new BlankFragment4()); | |
arrayList.add(new BlankFragment5()); //預設的介面卡 |
|
vp.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) { | |
@Override | |
public Fragment getItem(int i) { | |
return arrayList.get(i); | |
} | |
@Override | |
public int getCount() { | |
return arrayList.size(); | |
} | |
}); | |
for (int i = 0; i < arrayList.size(); i++) { | |
tb.getTabAt(i).setText(name[i]).setIcon(pic[i]); | |
} //設定第一個預設選中效果 |
|
tb.getTabAt(0).setIcon(pic2[0]); | |
tb.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() { | |
@Override | |
public void onTabSelected(TabLayout.Tab tab) { //監聽某個table被選中時的狀態,進行要改變得設著 |
|
tb.getTabAt(tab.getPosition()).setIcon(pic2[tab.getPosition()]); | |
} | |
@Override | |
public void onTabUnselected(TabLayout.Tab tab) { | |
tb.getTabAt(tab.getPosition()).setIcon(pic[tab.getPosition()]); | |
} | |
@Override | |
public void onTabReselected(TabLayout.Tab tab) { | |
} | |
}); | |
} | |
private void initView() { | |
vp = (ViewPager) findViewById(R.id.vp); | |
tb = (TabLayout) findViewById(R.id.tb); | |
} | |
}
|