我已经使用this库来添加类似于布局的Instagram,但我想删除选项卡中的可滑动手势,并仅在单击选项卡时切换选项卡。我无法在功能中找到任何东西。
public class TabsActivity extends android.support.v4.app.FragmentActivity {
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tabs);
initUI();
}
private void initUI() {
if (getIntent().getBooleanExtra("LOGOUT", false)) {
finish();
}
List<Fragment> fragments = new ArrayList<>();
TabsActivityAdapter dashPagerAdapter = new TabsActivityAdapter(getSupportFragmentManager(), fragments);
final ViewPager viewPager = (ViewPager) findViewById(R.id.vp_horizontal_ntb);
viewPager.setAdapter(dashPagerAdapter);
viewPager.setOffscreenPageLimit(2);
viewPager.getAdapter().notifyDataSetChanged();
final String[] colors = getResources().getStringArray(R.array.tabcolors);
final NavigationTabBar navigationTabBar = (NavigationTabBar) findViewById(R.id.ntb_horizontal);
final ArrayList<NavigationTabBar.Model> models = new ArrayList<>();
models.add(
new NavigationTabBar.Model.Builder(
getResources().getDrawable(R.drawable.home),
Color.parseColor(colors[0]))
.selectedIcon(getResources().getDrawable(R.drawable.home))
.title("Home")
.badgeTitle("NTB")
.build()
);
models.add(
new NavigationTabBar.Model.Builder(
getResources().getDrawable(R.drawable.group),
Color.parseColor(colors[1]))
.selectedIcon(getResources().getDrawable(R.drawable.group))
.title("Groups")
.badgeTitle("with")
.build()
);
models.add(
new NavigationTabBar.Model.Builder(
getResources().getDrawable(R.drawable.profile),
Color.parseColor(colors[3]))
.selectedIcon(getResources().getDrawable(R.drawable.profile))
.title("Profile")
.badgeTitle("icon")
.build()
);
navigationTabBar.setBgColor(Color.parseColor("#424242"));
navigationTabBar.setActiveColor(Color.parseColor("#ffffff"));
navigationTabBar.setInactiveColor(Color.parseColor("#9E9E9E"));
navigationTabBar.setModels(models);
navigationTabBar.setViewPager(viewPager, 0);
navigationTabBar.setAnimationDuration(0);
navigationTabBar.setIsSwiped(false);
navigationTabBar.setBehaviorEnabled(false);
navigationTabBar.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(final int position, final float positionOffset, final int positionOffsetPixels) {
}
@Override
public void onPageSelected(final int position) {
navigationTabBar.getModels().get(position).hideBadge();
}
@Override
public void onPageScrollStateChanged(final int state) {
}
});
}
}
activity_tabs.xml
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical">
<android.support.v4.view.ViewPager
android:id="@+id/vp_horizontal_ntb"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"/>
<devlight.io.library.ntb.NavigationTabBar
android:id="@+id/ntb_horizontal"
android:layout_width="match_parent"
android:layout_height="60dp"
app:ntb_badge_gravity="top"
app:ntb_badge_position="right"
app:ntb_badged="true"
app:ntb_scaled="true"
app:ntb_tinted="true"
android:isScrollContainer="true"
app:ntb_active_color="#3d3939"
app:ntb_title_mode="all"
app:ntb_titled="true"
app:ntb_swiped="false"/>
</LinearLayout>
如果这不起作用,任何人都可以建议替代图书馆。任何帮助,将不胜感激。
答案 0 :(得分:0)
尝试在代码中设置navigationTabBar.setIsSwiped(false);
或从xml
<devlight.io.library.ntb.NavigationTabBar
android:id="@+id/ntb"
android:layout_width="match_parent"
android:layout_height="50dp"
app:ntb_swiped="false"
...../>