在TextView中添加图片
来源:互联网 发布:数据库主键怎么写 编辑:程序博客网 时间:2024/04/28 21:56
TextView是一个很强大的控件,有时需要在一个控件中同时显示图片和文字,使用TextView很容易实现。
方法一:
聊天软件比如QQ一般都会有发送表情的功能,使用SpannableString+ImageSpan可以很容易实现
- private void showImageFace(String s,View v)
- {
- Bitmap bitmap;
- ImageSpan imageSpan;
- // 创建一个SpannableString对象,以便插入用ImageSpan对象封装的图像
- SpannableString spannableString = new SpannableString(s);
- for(int i=0;i<name.length;i++)
- {
- Log.i("MainActivity", "查找:"+name[i]);
- int j=0;
- int start=0;
- while(s.indexOf(name[i],start)>=0)
- {
- start = s.indexOf(name[i],start);
- bitmap = BitmapFactory.decodeResource(getResources(), ids[i]);
- imageSpan = new ImageSpan(this, bitmap);
- // 用ImageSpan对象替换字符
- spannableString.setSpan(imageSpan, start-1, start+2, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
- start=start+3;
- }
- }
- ((TextView)v).setText(spannableString);
- }
方法二:
在XML文件中直接配置就行了
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:drawableLeft="@drawable/jface_fastcry"
- android:drawableBottom="@drawable/jface_giddy"
- android:drawableRight="@drawable/jface_girl_cute"
- android:drawableTop="@drawable/jface_girl_cry"
- android:gravity="center_vertical|center_horizontal"
- android:text="中间"
- />
方法三:
扩展TextView控件,复写onDraw方法
- protected void onDraw(Canvas canvas)
- {
- // TODO Auto-generated method stub
- super.onDraw(canvas);
- if(bitmap!=null)
- {
- canvas.drawBitmap(bitmap, 0, 0, null);
- Paint paint =new Paint();
- paint.setColor(0x77000000);
- canvas.drawRect(0, getHeight()-getTextSize()-getTextSize()/3,
- getWidth(), getHeight(), paint);
- }
- if(text!=null)
- {
- Paint paint =new Paint();
- paint.setColor(Color.WHITE);
- canvas.drawText(text, (getWidth()-text.length()*getTextSize())/2,
- getHeight()-getTextSize()/3, paint);
- }
- }
效果图片:
7 0
- 在TextView中添加图片
- 在TextView中添加图片
- 在TextView中添加图片和文字
- iOS 在textView中添加图片
- 在TextView/EditText中添加图片方法
- 在TextView周围添加图片
- 在TextView中添加图片的三种方式
- 如何在textview中的字符串中添加图片显示
- 在textView中添加图片并设置图片大小
- Android TextView中添加图片
- 在TextView中添加超链接
- 在TextView中插入图片
- 在TextView中插入图片
- 在TextView中显示图片
- Android TextView中添加图片的方法
- 有关于TextView 利用到在内容中添加图片的效果
- Andorid中如果在TextView中用drawable添加图片改变图文间距
- Android在文本中添加超链接 (TextView)
- PHP学习笔记《PHP和MySQL web 开发》
- 一大波Java来袭(二)异常处理
- Swift编程语言入门视频教程(五)--输入语句
- 文件重定向
- Android在非UI线程中更新UI的方法
- 在TextView中添加图片
- jquery.fn.extend与jquery.extend
- Windows修改cmd字符集
- Nexus5线刷
- 使用Synergy共享你的鼠标和键盘
- OpenLayers学习——Layer体系(一)
- 重温C++ —— Chapter 1&2 变量和基本类型
- jQuery插件开发解析
- Swift编程语言入门视频教程(六)--if分支语句