layout中getDrawable()
时间: 2024-03-23 21:37:41 浏览: 70
DrawableLayout
在Android的layout文件中,getDrawable()方法可以用于为ImageView等View指定一个Drawable资源。例如,以下代码将ImageView的src属性设置为名为"my_drawable"的Drawable资源:
```
<ImageView
android:id="@+id/my_imageview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/my_drawable" />
```
这里的"@drawable/my_drawable"就是指定了一个Drawable资源。在这种情况下,系统会自动使用getResources().getDrawable()方法获取Drawable对象,并将其设置为ImageView的src属性。
请注意,如果您使用了较新的Android版本(API level 22及以上),则不建议在layout文件中使用getDrawable()方法。取而代之的是,您应该使用ContextCompat.getDrawable()或ViewCompat.getDrawable()方法。例如,以下代码将使用ContextCompat.getDrawable()方法为ImageView指定一个Drawable资源:
```
<ImageView
android:id="@+id/my_imageview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/my_drawable_compat" />
```
这里的"@drawable/my_drawable_compat"是一个与"@drawable/my_drawable"相同的Drawable资源,但是它是在Java代码中使用ContextCompat.getDrawable()方法获取的。这样,您就可以确保在所有Android版本上都有一致的行为。
阅读全文