如何从xml资源懒惰地加载drawable?资源ID首先不是整个可绘制图像

时间:2013-06-13 02:57:29

标签: android android-volley

我正在使用volley

的NetworkImageView

我想在xml资源的NetworkImageView上设置drawable image resource id和error drawable resource id。 所以,我修改了源代码,它可以工作。

的java

    public NetworkImageView(Context context,
    ...
         final TypedArray ta = context.obtainStyledAttributes(attrs, R.styleable.NetworkImageView, defStyle, 0);
    mDefaultDrawable = ta.getDrawable(R.styleable.NetworkImageView_defaultImage);
    mErrorDrawable = ta.getDrawable(R.styleable.NetworkImageView_errorImage);

XML

<...NetworkImageView
    xmlns:custom="http://schemas.android.com/apk/res/..."
    custom:resultScaleType="centerCrop"
    custom:errorImage="@drawable/no_image_icon"
    custom:errorScaleType="centerInside"
    custom:loupeViewId="@id/..."
            ...
/>       

但是,问题是,NetworkImageView总是首次加载默认和错误绘制,即使它们不是必需的。

我认为当ImageViews上显示多个ListView时会有太多浪费。

我想在需要时加载资源。所以,我想首先加载资源ID。

TypedArray.getResourceId()TypedArray.getInt()都不起作用。

你能帮助我吗?

1 个答案:

答案 0 :(得分:0)

来自开发者:

  

ViewStub 是一个看不见的,零大小的视图,可以懒得使用   在运行时膨胀布局资源。

也许这条信息可以让你受益?