android - 创建上面有 textview 的 imageview 图像

标签 android android-edittext android-imageview drawingcache

HI 有一个 imageview,该图像上有 EditText。我想使用 EditText 创建该 imageview 的单个图像。

我试过了,

editTextOptOneInput.buildDrawingCache();
imageViewOptOne.setImageBitmap(editTextOptOneInput.getDrawingCache());
imageViewOptOne.buildDrawingCache();
Bitmap bitmap1 = imageViewOptOne.getDrawingCache();

但将我的图像更改为黑色,因为我的文字颜色是黑色(我猜)。

最佳答案

您只能使用1 buildDrawingCache(),后续的将替换之前的内容。
因此,您最好将 EditText 和 ImageView 分组到一个容器中,然后拍摄那个容器。

或者...

不使用 EditText,只使用 TextView。
这个里面可以有一个或多个compound drawable

因此,您只能拍摄 TextView。

这是一个首选解决方案,因为它减少了 View 和(可能)布局数量。

[编辑]

要使用复合可绘制对象,只需在 xml 中使用 TextView 的 android:drawableLeft = "@drawable/your_drawable"(和/或 drawableRight、drawableTop、drawableBottom)属性。
要在 Java 中设置它们,请使用 setCompoundDrawablesWithIntrinsicBounds(int left, int top, int right, int bottom),如官方文档中所示:http://developer.android.com/reference/android/widget/TextView.html#setCompoundDrawablesWithIntrinsicBounds(int , 整数, 整数, 整数)

关于android - 创建上面有 textview 的 imageview 图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27403472/

相关文章:

android - 无法保留嵌套 fragment

android - 如何在 list 中设置 UP Activity

java - 如何每10秒更新一次GPS位置?

android - 如何从 edittext 中的 drawable 中删除色调颜色?

Android - 单击按钮并重新单击时在两个图像之间更改 ImageView

android - 位图太大而无法上传到纹理(通用图像加载器)

android - Greendao Autoincrement插入记录不起作用

java - 用户可拖动的编辑文本

android - 单击具有最新更新的 EditText 应用程序崩溃 (gradle 4.4 - android studio 3.1)

android - 无法在Android中设置自定义imageview的图像资源