java - 在 Java-Android 中设置背景图片的问题

标签 java android android-drawable

首先,我想告诉你,我是新来的,我来自西类牙,我的英语水平不是很好,所以请......试着理解我哈哈。另外,您必须知道我是一名远程信息处理工程专业的学生,​​编程只是我最喜欢的爱好。有了这些信息,我只想让您全面了解我的问题:我知道这是一个菜鸟问题,当我假装创建 Android 游戏时情况更糟...但我正在一点一点地学习。

问题

我遇到的问题是下一个。我想在名为“*activity_principal*”的主要 Activity 中设置一个 .PNG 图像。这张图片有很多空白区域,背景最初是黑色的(我猜是因为一开始选择的主题)。好吧,这张图片有一些黑色的细节,它们与背景颜色融合在一起。

我的第一个解决方案是尝试从 XML 对应代码设置两个背景,但很快我意识到不可能在同一个布局中使用它两次。所以我认为它可以通过下一种方式修复:我在 XML 文件和 .java 文件中设置了“android:background="@android:color/white"”,我设置了其他资源到后台:

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

    RelativeLayout fondo = (RelativeLayout) findViewById(R.layout.activity_principal);
    fondo.setBackgroundResource(R.drawable.prototipoestructurapantalla);
}

我曾经使用过这种结构,从来没有遇到过问题,但今天,在尝试这样做时,我发现了一些奇怪的事情。由于找不到错误,我在“setContentView(...”下的行下了两个断点并调试,当光标到达最后一行代码“fondo.setBack ...”时,变量“fondo”为“null”我认为存在问题,所以当我恢复调试时,应用程序崩溃了...

我希望你能帮助我。谢谢!

最佳答案

问题是 findViewById(R.layout.activity_principal); 将返回 null。

您传递的是布局 ID (R.layout.activity_principal) 而不是 View ID。

它应该类似于 findViewById(R.id.fondo);

关于java - 在 Java-Android 中设置背景图片的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19499738/

相关文章:

java - 如何为 SharedPreference 创建单元测试用例?

Java StringWriter toString 处的 StringBuilder 异常

android - 带有水平线和中间圆圈的可绘制 xml

java - SWT Spinner - 禁用键盘编辑

java - 从嵌套的 JSON 对象中检索值

java - Android SimpleDateFormat 返回上午和下午的点

android - 在图像上绘制而不是在 android 中的 ImageView 上绘制

Android 识别资源 ID 是可绘制的还是字符串

java - 将通用 ActionListener 添加到许多 JButtons 或 JComponents 或 JTextFields

java - Netbeans 模块开发内存不足