Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 添加按钮时应用程序崩溃_Java_Android - Fatal编程技术网

Java 添加按钮时应用程序崩溃

Java 添加按钮时应用程序崩溃,java,android,Java,Android,我想在我正在制作的游戏中,在画布前显示一个按钮。但是现在我的应用程序崩溃了,没有出现错误 代码如下: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ImageButton myButton = new Imag

我想在我正在制作的游戏中,在画布前显示一个按钮。但是现在我的应用程序崩溃了,没有出现错误

代码如下:

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        ImageButton myButton = new ImageButton(this);
        myButton.setId(R.id.myButton);
        myButton.setImageResource(R.drawable.settings);
        myButton.setClickable(true);
        AbsListView.LayoutParams layout_82 = new AbsListView.LayoutParams(
                AbsListView.LayoutParams.WRAP_CONTENT,
                AbsListView.LayoutParams.WRAP_CONTENT);
        RelativeLayout.LayoutParams Ib = new RelativeLayout.LayoutParams(myButton.getLayoutParams());
        Ib.setMargins(50, 100, 0, 0);
        myButton.setLayoutParams(layout_82);

        registerForContextMenu(myButton);
    }

您尚未将该按钮添加到布局中-调用
ViewGroup.addView(myButton)视图组是您要添加按钮的对象。

使用
findViewById()
方法从
R.layout.activity\u main
获取任何容器,并使用
addView()
方法将按钮添加到此容器。 容器可以是
视图组
*布局
)的任何子类


在将
myButton
添加到布局之前,不能调用
myButton.getLayoutParams()
myButton.getLayoutParams()
将返回null并崩溃

Ib
不是布局,我将其添加到代码中,但它仍然崩溃。MainActivity.addView(myButton);}publicstaticvoidaddview(ImageButton myButton){}您需要将按钮添加到视图组中,例如线性布局、相对布局或类似的布局。必须是布局文件中已经存在的内容。如何添加myButton