Android Xml位图可以';不可加载

Android Xml位图可以';不可加载,android,bitmap,android-drawable,Android,Bitmap,Android Drawable,我正在尝试从我的drawable加载一个简单的资源。我创建了一个位图,它的源代码是可绘制的: <?xml version="1.0" encoding="utf-8"?> <bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:gravity="center" android:src="@drawable/ball"/> <?xml version="1.

我正在尝试从我的drawable加载一个简单的资源。我创建了一个位图,它的源代码是可绘制的:

<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
    android:gravity="center"
    android:src="@drawable/ball"/>

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="oval">
    <solid android:color="#FF0000"/>
</shape>

我正在使用以下代码加载:
bitmapDrawable=BitmapFactory.decodeResource(context.getResources(),
R.drawable.bitmap\u-ball)


但它们总是返回null。如果位图xml存在并且也可绘制,那么返回null的原因是什么?

原因在于位图和可绘制之间的差异。使用删除“位图”文件

<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
    android:gravity="center"
    android:src="@drawable/ball"/>

原因在于位图和可绘制图形之间的差异。使用删除“位图”文件

<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
    android:gravity="center"
    android:src="@drawable/ball"/>

我看到了完全相同的答案。但我认为我不需要做这个任务。我来测试一下。我看到了完全相同的答案。但我认为我不需要做这个任务。我来测试一下。
Bitmap bitmapDrawable  = drawableToBitmap(ContextCompat.getDrawable(this, R.drawable.ball));