首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

转换TextView-> Bitmap-> ImageView,没有任何显示

要将TextView转换为Bitmap,然后再显示在ImageView上,可以按照以下步骤进行操作:

  1. 获取TextView的内容:使用TextView的getText()方法获取文本内容,并将其转换为字符串。
  2. 创建Bitmap对象:使用Bitmap类的createBitmap()方法创建一个空的Bitmap对象,作为最终生成的图像。
  3. 创建Canvas对象:使用Canvas类的构造函数,将上一步创建的Bitmap对象作为参数,创建一个Canvas对象,用于绘制文本。
  4. 设置画笔属性:使用Paint类设置画笔的属性,如颜色、字体大小等。
  5. 绘制文本:使用Canvas的drawText()方法,在Canvas对象上绘制文本,将TextView的内容绘制到Bitmap上。
  6. 将Bitmap显示在ImageView上:使用ImageView的setImageBitmap()方法,将生成的Bitmap对象设置为ImageView的显示内容。

以下是示例代码:

代码语言:java
复制
TextView textView = findViewById(R.id.textView);
ImageView imageView = findViewById(R.id.imageView);

// 获取TextView的内容
String text = textView.getText().toString();

// 创建一个空的Bitmap对象
Bitmap bitmap = Bitmap.createBitmap(textView.getWidth(), textView.getHeight(), Bitmap.Config.ARGB_8888);

// 创建一个Canvas对象
Canvas canvas = new Canvas(bitmap);

// 设置画笔属性
Paint paint = new Paint();
paint.setColor(Color.BLACK);
paint.setTextSize(textView.getTextSize());

// 绘制文本
canvas.drawText(text, 0, textView.getHeight() / 2, paint);

// 将Bitmap显示在ImageView上
imageView.setImageBitmap(bitmap);

这样,TextView的内容就会被转换为Bitmap,并显示在ImageView上。请注意,上述代码中的R.id.textView和R.id.imageView是示例中的控件ID,需要根据实际情况进行修改。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android硬件加速(二)-RenderThread与OpenGL GPU渲染

,则等待GPU渲染结束,GPU结束后,会通知SurfaceFlinger进行合成,SF合成后,提交显示,如此完成图像的渲染显示,简单画下示意图: ?...OpenGL环境的初始化 一般在使用OpenGL的时候,首先需要获取OpenGL相应的配置,再为其构建渲染环境,比如必须创建OpenGL上下文(Context),上下文可以看做是OpenGL的化身,没有上下文就没有...在Android Profile的CPU工具中可以清楚的看到该线程的存在(没有显示任务的进程是没有的: ?...return false;} 初始化,主要是创建EglContext中必须的一些组件,到这里其实都是工具的创建,基本上还没构建OpenGL需要的任何实质性的东西 void RenderThread...关于swapbuffer这段时间的耗时有空再看了 总结 UI线程构建OpenGL的DrawOpTree Render线程负责DrawOpTree合并优化、数据的同步 Render线程负责将DrawOp转换成标准

9.9K51
  • 图片系列(6)不同版本上 Bitmap 内存分配与回收原理对比

    不同版本的 Bitmap 内存分配策略 先说一下 Bitmap 在内存中的组成部分,在任何系统版本中都会存在以下 3 个部分: 1、Java Bitmap 对象: 位于 Java 堆,即我们熟悉的 android.graphics.Bitmap.java...1.3 没有必要主动调用 recycle() 吗?...出于这个原因,网上有观点认为 Bitmap 已经没有必要主动调用 recycle() 方法了,甚至还说是 Google 建议的。...抛开这个字眼,我认为 Google 的意思是想说明有兜底策略的存在,如果开发者没有调用 recycle() 方法,也不必担心内存泄漏。...那么,有没有可能让低版本也将 Bitmap 数据存在 Native 层呢?关注我,带你建立核心竞争力,我们下次见。

    1.5K10

    Universal-Image-Loader,android-Volley,Picasso、Fresco和Glide图片缓存库的联系与区别

    使用这个库在图片的处理上,没有提供任何的图片处理的操作,个人感觉这个库主要在网络数据连接上比较好,在图片处理上还是不够完善,强大。...有以下优点: 处理Adapter中的 ImageView 回收和取消已经回收ImageView的下载进程 使用最少的内存完成复杂的图片转换,比如把下载的图片转换为圆角等 自动添加磁盘和内存缓存 如果你的项目里面...Fresco 中设计有一个叫做 Drawees 模块,方便地显示loading图,当图片不再显示在屏幕上时,及时地释放内存和空间占用。...当然glide可以让我们设置采样率,创建一个新的GlideModule将Bitmap格式转换到ARGB_8888。...具体说来就是:假如在第一个页面有一个200x200的ImageView,在第二个页面有一个100x100的ImageView,这两个ImageView本来是要显示同一张图片,却需要下载两次。

    1.3K70

    Carson带你学Android:最全面解析图片加载库Glide用法

    .asBitmap()//显示gif静态图片 .asGif();//显示gif动态图片 .into(imageView); 2.2.3 关于缓存 设置磁盘缓存策略 Glide.with...:不缓存任何图片,即禁用磁盘缓存 // DiskCacheStrategy.ALL :缓存原始图片 & 转换后的图片(默认) // DiskCacheStrategy.SOURCE:只缓存原始图片(原来的全分辨率的图像...,即不缓存转换后的图片) // DiskCacheStrategy.RESULT:只缓存转换后的图片(即最终的图像:降低分辨率后 / 或者转换后 ,不缓存原始图片 设置跳过内存缓存 Glide .with...设置动态转换 Glide.with(this).load(imageUrl).centerCrop().into(imageView); 设置下载优先级 Glide.with(this).load(imageUrl...Demo实例 没有Demo的代码讲解不是好文章,让我们来一步步学会使用Glide。

    86720

    Carson带你学Android:图片加载库Picasso学习教程

    .into(targetImageView); 2.2.2 图片转换 使用最少的内存完成复杂的图片转换转换图片以适合所显示ImageView,来减少内存消耗 Picasso.with(context...Picasso支持加载过程中和加载错误时显示对应图片 Picasso.with(context) .load(url) //加载过程中的图片显示 .placeholder(R.drawable.user_placeholder...) //加载失败中的图片显示 //如果重试3次(下载源代码可以根据需要修改)还是无法成功加载图片,则用错误占位符图片显示。...,而是 Picasso 自己没有实现,交给了 Square 的另外一个网络库 okhttp 去实现,这样的好处是可以通过请求 Response Header 中的 Cache-Control 及 Expired...Demo实例 没有Demo的代码讲解不是好文章,让我们来一步步学会使用Picasso。

    68620

    Android图片开源库:最全面、详细的Picasso讲解

    .into(targetImageView); 2.2.2 图片转换 使用最少的内存完成复杂的图片转换转换图片以适合所显示ImageView,来减少内存消耗 Picasso.with(context...Picasso支持加载过程中和加载错误时显示对应图片 Picasso.with(context) .load(url) //加载过程中的图片显示 .placeholder(R.drawable.user_placeholder...) //加载失败中的图片显示 //如果重试3次(下载源代码可以根据需要修改)还是无法成功加载图片,则用错误占位符图片显示。...,而是 Picasso 自己没有实现,交给了 Square 的另外一个网络库 okhttp 去实现,这样的好处是可以通过请求 Response Header 中的 Cache-Control 及 Expired...Demo实例 没有Demo的代码讲解不是好文章,让我们来一步步学会使用Picasso。

    1.8K30

    IOS开发系列——UIView专题之二:动画篇【整理,部分原创】

    •改变状态:隐藏或显示状态。 •改变视图层次顺序:视图哪个前哪个后。 •旋转:即任何应用到视图上的仿射变换(transform)。...这个方法将不会做任何事情如果动画没有运行或者没有在动画块外调用。使用beginAnimations:context:类方法来开始并用commitAnimations类方法来结束动画块。...讨论 这个方法在动画块外没有任何效果。使用beginAnimations:context:类方法开始一个动画块并用commitAnimations类方法结束一个动画块。...讨论 这个方法在动画块外没有任何效果。使用beginAnimations:context:类方法来开始一个动画块并用commitAnimations类方法结束。默认值是NULL。...讨论 这个方法在动画块外没有任何作用。使用beginAnimations:context:类方法来开始一个动画块并用commitAnimations类方法来结束。

    1.4K10

    【IOS开发基础系列】UIView专题

    一个iOS程序之所以能显示到屏幕上,完全是因为它有UIWindow。也就说,没有UIWindow,就看不见任何UI界面。         ...任何UIView对象标记为需要显示後将会在应用程序循环中自动重新绘制。...这个方法将不会做任何事情如果动画没有运行或者没有在动画块外调用。使用beginAnimations:context:类方法来开始并用 commitAnimations类方法来结束动画块。...关于灰色的实现,我们暂定用一个View贴在ImageView上named maskView,然后用hidden来控制是否显示(上一篇文章有说过,所有hidden的View默认不接受任何事件)。         ...Scale的,当图片尺寸超过 ImageView尺寸时,只有部分显示ImageView中。

    62830

    Android图片加载框架最全解析(八),带你全面了解Glide 4的用法

    上面五种参数的解释本身并没有什么难理解的地方,但是关于转换过后的图片这个概念大家可能需要了解一下。...我们可以让Glide加载出来的图片不显示ImageView上吗?答案是肯定的,这就需要用到自定义Target功能。...有了这个对象之后你可以使用它进行任意的逻辑操作,这里我只是简单地把它显示到了ImageView上。...不过由于这部分内容相对于Glide 3没有任何的变化,因此就不再重复进行讲解了。...自定义模块功能可以将更改Glide配置,替换Glide组件等操作独立出来,使得我们能轻松地对Glide的各种配置进行自定义,并且又和Glide的图片加载逻辑没有任何交集,这也是一种低耦合编程方式的体现。

    2.6K70

    Android PowerImageView实现,可以播放动画的强大ImageView

    我们都知道,在Android中如果想要显示一张图片,可以借助ImageView控件来完成,但是如果将一张GIF图片设置到ImageView里,它只会显示这张图片的第一帧,不会产生任何的动画效果。...那么就没有办法在Android里播放GIF图片了吗?当然不是,我们可以通过自定义控件的方式来实现这个功能。...* * @param a * @param context * @param attrs * @return 返回布局文件中指定图片资源所对应的id,没有指定任何图片资源就返回0。...如果得到的Movie对象等于null,说明这是一张普通的图片资源,就不再进行任何特殊处理,因为父类ImageView都帮我们处理好了。...一张图片在布局正中央显示出来了,正是普通ImageView所具备的功能。你还可以在PowerImageView中指定android:scaleType等属性,用法和原生的ImageView完全一样。

    1.5K50

    android图片加载库Glide

    如果你对图片没有过高的要求,那么用默认的格式就可以,但是如果你对图片质量要求较高,那么可以把图片的格式转换为ARGB8888,方法就是通过继承GlideMoudle,如下所示: public class...当我们调整imageview的大小时,Picasso会不管imageview大小是什么,总是直接缓存整张图片,而Glide就不一样了,它会为每个不同尺寸的Imageview缓存一张图片,也就是说不管你的这张图片有没有加载过...的时候,总是需要调整大小,确实Picasso有一个立即显示图片的方法(如下所示),但是这还是消除不了延时。...除了加载gif图片外,Glide还可以解析任何的video文件成为一个静态图片。 另一个比较有用的特性是,你可以配置显示图片的动画,而Picasso只支持一个淡入(fading in)动画效果。...还有很多的特性,但是一般都不太常用,如,把一个图片的编码转换为字节数组,等。

    1.9K60

    UITableViewCell系列之(二)视觉差滚动效果前言

    但是苦于最近很忙,零碎的时间不够用,没有时间停留在文章的脉络和排版上,只能把我所想写的文章拆开,以短篇的形式拿出来。...用于tableView滚动时,更新imageView的Y坐标值 在UIScrollViewDelegate的scrollViewDidScroll:方法里调用cell的对象方法,更新imageView的...Y坐标值 注意事项: 1. cell的imageView的上、下边距要超出cell,不然tableView滚动的时候没有多余的部分显示。...控制器不能使UITableViewController,只能是UIViewController的view上添加一个UITableView ---- 3. demo中涉及到了坐标系转换的问题,不了解坐标系转换的可以参考如下两个方法的使用...控制器.m文件中 - (void)scrollViewDidScroll:(UIScrollView *)scrollView { // 1.获取当前屏幕上显示的所有的cell NSArray

    6.1K30
    领券