gpt4 book ai didi

android - 从 android :src in a resource XML 引用我的自定义 BitmapDrawable

转载 作者:行者123 更新时间:2023-11-29 00:41:10 24 4
gpt4 key购买 nike

我有一个 FrameLayout 如下(两个 android:src 属性都引用 /res/drawable 文件夹中的 .png 文件):

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/frameLayout1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >

<ImageView
android:id="@+id/ivFrame"
android:adjustViewBounds="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/frame" />

<ImageView
android:id="@+id/ivContent"
android:adjustViewBounds="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/content" />

</FrameLayout>

现在,我需要对第二个 ImageView(指的是 @drawable/content)进行一些调试。为此,我创建了一个 Custom BitmapDrawable,如下所示:

public class CustomDrawable extends BitmapDrawable {


public CustomDrawable(Resources res, Bitmap bitmap) {
super(res, bitmap);
// TODO Auto-generated constructor stub
}

public CustomDrawable(Resources res, InputStream is) {
super(res, is);
// TODO Auto-generated constructor stub
}

public CustomDrawable(Resources res, String filepath) {
super(res, filepath);
// TODO Auto-generated constructor stub
}

public CustomDrawable(Resources res) {
super(res);
// TODO Auto-generated constructor stub
}

@Override
protected void onBoundsChange(Rect bounds) {
Log.d(Constants.LOG_TAG,"CustomDrawable.onBoundsChanged: "+bounds);
super.onBoundsChange(bounds);
}

}

问题:

  1. 如何在 XML 中指定我的 CustomDrawable(并告诉它使用 @drawable/content)
  2. 然后如何让布局 XML 中的 ImageView 指向我的 CustomDrawable

最佳答案

你不能在 xml 文件中做,但你可以在代码中做:

((ImageView) findViewById(R.id.ivContent)).setImageDrawable(new CustomDrawable(...))

关于android - 从 android :src in a resource XML 引用我的自定义 BitmapDrawable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9259798/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com