本文介绍了如何在我的活动中删除tablayout中的标签?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的TabLayout中有3个标签,我的问题是,例如,我想从TabLayout和ViewPager删除或禁用一个或多个特定标签,是否可以实现,我该怎么做?
i have 3 tabs in my TabLayout, my question is, for example, i want to delete or disable one or more particular Tab from TabLayout and ViewPager, is it possible to achieve, how can i do this?
<pre lang="C#">public class MainActivity extends AppCompatActivity implements TabLayout.OnTabSelectedListener{<br />
<br />
TabLayout tabLayout;<br />
public static ViewPager viewPager;<br />
DBController db;<br />
<br />
@Override<br />
protected void onCreate(Bundle savedInstanceState) {<br />
super.onCreate(savedInstanceState);<br />
setContentView(R.layout.activity_main);<br />
<br />
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);<br />
setSupportActionBar(toolbar);<br />
<br />
tabLayout = (TabLayout) findViewById(R.id.tabLayout);<br />
<br />
tabLayout.removeViewAt(3);<br />
<br />
viewPager = (ViewPager) findViewById(R.id.pager);<br />
<br />
<br />
Pager adapter = new Pager(getSupportFragmentManager(), tabLayout.getTabCount());<br />
<br />
viewPager.setAdapter(adapter);<br />
<br />
tabLayout.setOnTabSelectedListener(this);<br />
<br />
viewPager.setAdapter(new SectionPagerAdapter(getSupportFragmentManager()));<br />
tabLayout.setupWithViewPager(viewPager);<br />
<br />
<br />
}<br />
<br />
@Override<br />
public void onTabSelected(TabLayout.Tab tab) {<br />
viewPager.setCurrentItem(tab.getPosition());<br />
}<br />
<br />
@Override<br />
public void onTabUnselected(TabLayout.Tab tab) {<br />
<br />
}<br />
<br />
@Override<br />
public void onTabReselected(TabLayout.Tab tab) {<br />
<br />
}<br />
@Override<br />
public boolean onCreateOptionsMenu(Menu menu) {<br />
// Inflate the menu; this adds items to the action bar if it is present.<br />
getMenuInflater().inflate(R.menu.main, menu);<br />
return true;<br />
<br />
}<br />
@Override<br />
public boolean onOptionsItemSelected(MenuItem item) {<br />
<br />
int id = item.getItemId();<br />
<br />
if (id == R.id.cartlist) {<br />
Intent intent = new Intent(this,cart_list.class);<br />
startActivity(intent);<br />
return true;<br />
}<br />
return true;<br />
}<br />
public class SectionPagerAdapter extends FragmentPagerAdapter {<br />
<br />
public SectionPagerAdapter(FragmentManager fm) {<br />
super(fm);<br />
<br />
}<br />
<br />
@Override<br />
public Fragment getItem(int position) {<br />
switch (position) {<br />
case 0:<br />
return new Tab1();<br />
case 1:<br />
return new Tab2();<br />
case 2:<br />
return new Tab4();<br />
}<br />
return null;<br />
}<br />
<br />
@Override<br />
public int getCount() {<br />
return 3;<br />
}<br />
<br />
@Override<br />
public CharSequence getPageTitle(int position) {<br />
switch (position) {<br />
case 0:<br />
return "ALL";<br />
case 1:<br />
return "WESTERN";<br />
case 2:<br />
return "-";<br />
}<br />
return null;<br />
}<br />
}</pre><br />
我尝试了什么:
是否有任何语法可以实现或解决这个问题?
What I have tried:
is there any syntax to acheive or solve this problem?
推荐答案
这篇关于如何在我的活动中删除tablayout中的标签?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!