【发布时间】:2020-06-08 22:52:28
【问题描述】:
我正在使用 androidx 进行开发,并且我正在尝试使用 NavigationView,并且由于 findViewById 通常在您需要时无法正常工作,因此我正在尝试使用 Java 代码完成所有工作。所以,我试图让这个NavigationView 出现,但这似乎缺少一些东西:
public class MainActivity extends AppCompatActivity {
Activity_Animation001_Layout animation001_layout;
Animation_Activity002 animLay2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
DrawerLayout mDrawer = new DrawerLayout(this);
mDrawer.setLayoutParams(new DrawerLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
LinearLayout mLinearLayout = new LinearLayout(this);
mLinearLayout.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
mLinearLayout.setOrientation(LinearLayout.HORIZONTAL);
TextView mTextView = new TextView(this);
mTextView.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
mTextView.setText("something");
mTextView.setTextSize(30);
mLinearLayout.addView(mTextView);
NavigationView mNavView = new NavigationView(this);
NavigationView.LayoutParams mNavLayParam = new NavigationView.LayoutParams(250, ViewGroup.LayoutParams.MATCH_PARENT);
mNavLayParam.gravity= Gravity.RIGHT;
mNavView.setLayoutParams(mNavLayParam);
mDrawer.addView(mLinearLayout);
mDrawer.addView(mNavView);
// animLay2 = new Animation_Activity002(this);
setContentView(mDrawer);
}
Drawer、LinearLayout 和 TextView 似乎出现了,但是当我从屏幕右边缘向左滑动时,我使 NavigationView 出现。我们应该如何添加和实例化视图(或者在这种情况下为NavigationView)?
【问题讨论】:
标签: java android android-layout navigation navigation-drawer