layout能使用getDrawable().getIntrinsicWidth()
时间: 2023-12-03 08:02:58 浏览: 168
DrawableLayout
在layout中,getDrawable().getIntrinsicWidth()并不能直接使用。因为这个方法是定义在Drawable类中的,而在layout中,我们通常使用的是View类及其子类,它们并没有直接提供这个方法。如果你想要获取一个View中的Drawable对象的固有宽度,你可以通过以下方式之一实现:
1. 通过findViewById()方法获取到View对象,然后通过View对象的getBackground()、getCompoundDrawables()等方法获取到对应的Drawable对象,最后使用getDrawable().getIntrinsicWidth()方法获取其固有宽度。
2. 直接在Java代码中创建一个Drawable对象,然后使用getDrawable().getIntrinsicWidth()方法获取其固有宽度,例如:
```
Drawable drawable = getResources().getDrawable(R.drawable.my_drawable);
int intrinsicWidth = drawable.getIntrinsicWidth();
```
这里的R.drawable.my_drawable是一个Drawable类型的资源,你可以替换成你自己的资源。
阅读全文