我正在嘗試使操作按鈕從主頁片段移動到促銷片段。
在片段主頁中,有一個操作按鈕將移動到促銷片段。但是,當點擊首頁片段上的促銷操作按鈕時,顯示將移動到促銷片段,但仍然選擇了首頁片段中的底部導航。
截圖首頁片段
截圖宣傳片斷
這是我在 Home Fragment 中的操作按鈕代碼:
imagePromo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
((MainActivity)getActivity()).selectFragment(2);
}
});
這是我在 MainActivity 中的 selectfragment 代碼:
public void selectFragment(int position){
viewPager.setCurrentItem(position, true);
viewPager.dispatchSetSelected(true);
}
這是我在 MainActivity 中的底部導航代碼:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
view = findViewById(android.R.id.content);
viewPager = findViewById(R.id.viewpager);
viewPager.setAdapter(new MyAdapter(getSupportFragmentManager()));
viewPager.setOffscreenPageLimit(pager_number);
navigation = findViewById(R.id.navigation);
navigation.setOnNavigationItemSelectedListener(item -> {
switch (item.getItemId()) {
case R.id.navigation_home:
viewPager.setCurrentItem(0);
return true;
case R.id.navigation_category:
viewPager.setCurrentItem(1);
return true;
case R.id.navigation_promo:
viewPager.setCurrentItem(2);
return true;
case R.id.navigation_wishlist:
viewPager.setCurrentItem(3);
return true;
}
return false;
});
}
uj5u.com熱心網友回復:
您可以設定它在你setOnClickListener改變Fragment的ViewPager,它是CurrentItem要獲取圖示藏漢改變。
Button to_promo = view.findViewById(R.id.to_promo);
to_promo.setOnClickListener(view1 -> {
viewPager.setCurrentItem(2);
});
uj5u.com熱心網友回復:
我正在嘗試使用我在 github 上找到的代碼。下面是代碼片段:
viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
if (prevMenuItem != null) {
prevMenuItem.setChecked(false);
} else {
navigation.getMenu().getItem(0).setChecked(false);
}
navigation.getMenu().getItem(position).setChecked(true);
prevMenuItem = navigation.getMenu().getItem(position);
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
我嘗試在 MainActivity 中應用它,它解決了我上面的問題。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/371983.html
標籤:安卓 android-fragments 底部导航视图
下一篇:顯示/隱藏片段而不是替換
