在线性布局中添加按钮会崩溃

Tah*_*lil 0 android android-linearlayout

我真的不明白为什么这个简单的代码在这一行崩溃了 layout.addView(button);

super.onCreate(savedInstanceState);
    layout = (LinearLayout)findViewById(R.id.linearLayout);
    LinearLayout.LayoutParams p = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);

    Button button = new Button(this);
    button.setHeight(100);
    button.setWidth(100);
    button.setText("HELLO");
    button.setLayoutParams(p);
    layout.addView(button);
Run Code Online (Sandbox Code Playgroud)

activity_main.xml中

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/linearLayout">
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

编辑:编辑过的代码仍然粉碎.但现在压缩setContentView.

super.onCreate(savedInstanceState);

    layout = (LinearLayout)findViewById(R.id.linearLayout);
    setContentView(layout); 
    LayoutParams p = new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT);

    int i,j;
    Button button = new Button(this);
    button.setHeight(100);
    button.setWidth(100);
    button.setText("HELLO");
    layout.addView(button,p);
Run Code Online (Sandbox Code Playgroud)

Logcat报告 在此输入图像描述

Ego*_*gor 5

只是因为你没有打过电话setContentView().View你的根Activitynull,也是layout.