通过XML从资产加载图像

时间:2014-05-16 22:58:13

标签: android assets

我在我的应用程序中使用了超过150张图像和30个图标!所以我发现将这些图像放在Drawable文件夹中有点混乱,因为不可能在drawable中有子文件夹,我试图从Assets文件夹加载我的图像。 因此,以编程方式从资源加载图像就OK了。

MY QUESTION is how to access Assets through XML?!

with drawable我们用这个:

  <ImageView    
    android:id="@+id/img"
    android:layout_width="25dp"
    android:layout_height="25dp"
    android:src=" **@drawable/ic_rate** "
      />

那么使用资产的等价物是什么。

2 个答案:

答案 0 :(得分:3)

尽管您应该使用drawable,但您可以将自己的asset_drawable属性定义为字符串,而不是覆盖ImageView以查找该属性并从资源加载位图。你的xml看起来像这样

 <com.foo.bar.AssetImageView    
     android:id="@+id/img"
     android:layout_width="25dp"
     android:layout_height="25dp"
     app:asset_drawable="some/path/asset"
  />

答案 1 :(得分:2)

你不是。 ImageView期望一个可绘制的。并非所有资产都是可绘制的。

Drawables可让您使用不同屏幕密度的图像。只是使用那些。如果您正在努力保持井井有条,也许您可​​以尝试使用前缀(例如,带有ic的前缀图标)。另一个选择是专门为图标创建一个库项目,虽然它可能有点过分。