设置布局背景时应用程序崩溃

时间:2014-09-14 21:49:14

标签: java android

我试图通过java设置一个可绘制资源作为我的主要相对布局的背景,但每当我这样做时,我的应用程序崩溃。

以下是代码中无法正常工作的部分:

public class GameActivity extends Activity {

    RelativeLayout layout;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        layout = (RelativeLayout) findViewById(R.layout.activity_game);
        setContentView(R.layout.activity_game);
        layout.setBackgroundResource(R.drawable.image);

    }

}

有什么想法吗? 提前致谢

2 个答案:

答案 0 :(得分:3)

仅在findViewById()之后致电setContentView()并在R.id(而不是R.layout)中提供标识符,以便它可以返回null以外的内容。< / p>

答案 1 :(得分:2)

请记住,您正在尝试按ID查找视图,但您正在尝试以错误的方式尝试扩充布局。将R.layout.activity_game更改为R.id.activity_game并确保相对布局为给予

android:id = "@+id/activity_game"

完整的代码应该是

public class GameActivity extends Activity {

RelativeLayout layout;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_game);
    layout = (RelativeLayout) findViewById(R.id.activity_game);
    layout.setBackgroundResource(R.drawable.image);
}

} 希望它有所帮助。快乐编码。