我有一个文字视图(标题)放在我的图像视图。当我在屏幕上更改可见的文本时,但当我保存该图像时,当我在图库中查看时没有任何图像出现在图像上。TextView没有立即更新
当我使用runOnUiThread时,它仅在更改文本颜色以及更改文本时起作用。
但是,如果我使用自定义视图并在画布上绘制文本,它会正常工作,更改会立即保存在图像上。
这是为什么?背景中究竟发生了什么?我怎样才能让文本视图的变化立即得到更新?
下面是我的代码更新文本视图 (我是通过调用作物()函数裁剪我的图像视图的宽度和高度相对布局)
@Override
public void onClick(View v)
{
runOnUiThread(new Runnable() {
@Override
public void run() {
textView.setText(textPreview.getText().toString());
if(colorSet == 1){
textView.setTextColor(col);
}
});
crop();
dialog.dismiss();
}
我的作物()函数 - newBitmap是我的其中标题被放在
newBitmap1 = Bitmap.createBitmap(relLay.getDrawingCache(),0,0,newBitmap.getWidth(),newBitmap.getHeight());
SharingFile = CreateTempFile(newBitmap1);
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + SharingFile)) ;
setIntent(shareIntent);
TextView只是一个覆盖在显示图像顶部而不实际更改位图的视图。如果你想改变一个图像,你将不得不在其上绘制并保存。但是,您始终可以在图像上叠加文本视图并截取屏幕截图。 – Srikanth
在这种情况下,我实际上是用我的图像视图宽度和高度裁剪我的相对布局。 – ik024
包含代码中对图像进行更改的部分以及要保存图像的部分。 – Srikanth