问题遇到的现象和发生背景
NavigationView无法代码设置gravity
问题相关代码,请勿粘贴截图
//这里是xml代码可以正常的进行侧滑菜单
<com.google.android.material.navigation.NavigationView
android:id="@+id/nv_drawer_menu"
android:layout_width="300dp"
android:layout_height="match_parent"
android:layout_gravity="start"
app:headerLayout="@layout/navigation_header"
app:menu="@menu/navigation_menu" />
//这里是使用java代码创建
NavigationView navigationView = new NavigationView(this);
navigationView.setLayoutParams(new FrameLayout.LayoutParams(dpToPx(300), ViewGroup.LayoutParams.MATCH_PARENT, Gravity.START));
navigationView.inflateHeaderView(R.layout.navigation_header);
navigationView.inflateMenu(R.menu.navigation_menu);
linearLayout1.addView(navigationView);
运行结果及报错内容
navigationView.setLayoutParams(new FrameLayout.LayoutParams(dpToPx(300), ViewGroup.LayoutParams.MATCH_PARENT, Gravity.START));
问题就在这一步gravity无法设置成功
我的解答思路和尝试过的方法
修改LayoutParams等各种方式都试了都不行
我想要达到的结果
实现使用java代码创建navigationView侧滑菜单而不用xml