不知道为什么点击Fragment不跳转啊,各位大大帮忙看看吧,感谢!
MainActivity.java的代码
package com.example.baymax.ui.activity;
import android.os.Bundle;
import android.view.MenuItem;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
import com.example.baymax.R;
import com.example.baymax.base.BaseFragment;
import com.example.baymax.ui.fragment.HomeFragment;
import com.example.baymax.ui.fragment.ListFragment;
import com.example.baymax.ui.fragment.MineFragment;
import com.example.baymax.utils.LogUtils;
import com.google.android.material.bottomnavigation.BottomNavigationView;
import butterknife.BindView;
import butterknife.ButterKnife;
public class MainActivity extends AppCompatActivity {
// private static final String TAG = "MainActivity";
@BindView(R.id.main_navigation_bar)
public BottomNavigationView mNavigationView;
private HomeFragment mHomeFragment;
private ListFragment mListFragment;
private MineFragment mMineFragment;
private FragmentManager mFm;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
// initView();
initFragments();
initListener();
}
private void initFragments() {
//ctrl+alt+f
mHomeFragment = new HomeFragment();
mListFragment = new ListFragment();
mMineFragment = new MineFragment();
mFm = getSupportFragmentManager();
switchFragment(mHomeFragment);
}
private void initListener() {
mNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
//Log.d(TAG,"title --> " + item.getTitle() + " id --> " +item.getItemId());
if(item.getItemId()==R.id.home){
LogUtils.d(MainActivity.class, "切换到首页");
switchFragment(mHomeFragment);
}else if (item.getItemId() == R.id.list){
LogUtils.i(MainActivity.class, "切换到订单");
switchFragment(mListFragment);
}else if (item.getItemId() == R.id.mine){
LogUtils.w(MainActivity.class, "切换到我的");
switchFragment(mMineFragment);
}
return true;
}
});
}
private void switchFragment(BaseFragment targetFragment) {
FragmentTransaction fragmentTransaction = mFm.beginTransaction();
fragmentTransaction.replace(R.id.main_page_container,targetFragment);
fragmentTransaction.commit();
}
// private void initView() {
// HomeFragment homeFragment = new HomeFragment();
// FragmentManager fm = getSupportFragmentManager();
// FragmentTransaction transaction = fm.beginTransaction();
// transaction.add(R.id.main_page_container,homeFragment);
// transaction.commit();
// }
}
LogUtils.java的代码
package com.example.baymax.utils;
import android.util.Log;
public class LogUtils {
private static int currentLev = 3;
private static final int DEBUG_LEV = 3;
private static final int INFO_LEV = 2;
private static final int WARNING_LEV = 1;
// private static int errorLev = 1;
public static void d(Class clazz,String log) {
if (currentLev >= DEBUG_LEV) {
Log.d(clazz.getSimpleName(),log);
}
}
public static void i(Class clazz,String log) {
if (currentLev >= INFO_LEV) {
Log.i(clazz.getSimpleName(),log);
}
}
public static void w(Class clazz,String log) {
if (currentLev >= WARNING_LEV) {
Log.w(clazz.getSimpleName(),log);
}
}
// public static void e(Class clazz,String log) {
// if (currentLev >= errorLev) {
// Log.e(clazz.getSimpleName(),log);
// }
//
// }
}
隐约觉得LogUtils创建的有问题

您的每一个用心回答,都会让这个世界变得更美好一些!