TextView和EditText中显示图片
来源:互联网 发布:linux ps aux grep 编辑:程序博客网 时间:2024/05/27 00:44
EditText(TextView同样处理)添加图片主要用SpannableString和ImageSpan类:Drawable drawable = getResources().getDrawable(R.drawable.icon); drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight()); SpannableString spannable = new SpannableString(getText(R.id.editText1).toString() + "[smile]"); ImageSpan span = new ImageSpan(drawable, ImageSpan.ALIGN_BASELINE); spannable.setSpan(span, getText(R.id.editText1).length(),getText(R.id.editText1).length()+"[smile]".length(), Spannable.SPAN_INCLUSIVE_EXCLUSIVE); editText.setText(spannable);将需要的文字高亮显示:public void highlight(int start,int end){ SpannableStringBuilder spannable=new SpannableStringBuilder(getText().toString());//用于可变字符串 ForegroundColorSpan span=new ForegroundColorSpan(Color.RED); spannable.setSpan(span, start, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); setText(spannable); }加下划线:
public void underline(int start,int end){ SpannableStringBuilder spannable=new SpannableStringBuilder(getText().toString()); CharacterStyle span=new UnderlineSpan(); spannable.setSpan(span, start, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); setText(spannable); }组合运用:
SpannableStringBuilder spannable=new SpannableStringBuilder(getText().toString()); CharacterStyle span_1=new StyleSpan(android.graphics.Typeface.ITALIC); CharacterStyle span_2=new ForegroundColorSpan(Color.RED); spannable.setSpan(span_1, start, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); spannable.setSpan(span_2, start, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); setText(spannable);案例:带有\n换行符的字符串都可以用此方法显示2种颜色
/** * 带有\n换行符的字符串都可以用此方法显示2种颜色 * @param text * @param color1 * @param color2 * @return */ public SpannableStringBuilder highlight(String text,int color1,int color2,int fontSize){ SpannableStringBuilder spannable=new SpannableStringBuilder(text);//用于可变字符串 CharacterStyle span_0=null,span_1=null,span_2; int end=text.indexOf("\n"); if(end==-1){//如果没有换行符就使用第一种颜色显示 span_0=new ForegroundColorSpan(color1); spannable.setSpan(span_0, 0, text.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); }else{ span_0=new ForegroundColorSpan(color1); span_1=new ForegroundColorSpan(color2); spannable.setSpan(span_0, 0, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); spannable.setSpan(span_1, end+1, text.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); span_2=new AbsoluteSizeSpan(fontSize);//字体大小 spannable.setSpan(span_2, end+1, text.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); } return spannable; }
- android TextView和EditText中显示图片
- android TextView和EditText中显示图片
- android TextView和EditText中显示图片
- TextView和EditText中显示图片
- android TextView和EditText中显示图片
- android TextView和EditText中显示图片
- 在EditText中插入表情图片 (CharacterStyle&SpannableString),TextView中显示HTML和图片
- 图文混编效果之TextView、EditText中显示图片
- EditText TextView中显示表情
- TextView和EditText的显示
- TextView和EditText中添加图片(ImageSpan)
- TextView中显示HTML和图片
- TextView中显示文字和图片
- Android TextView中显示HTML和图片
- EditText中显示图片
- 在TextView/EditText中添加图片方法
- EditText和TextView上显示表情
- 在TextView中显示图片
- 32位系统迁移到64位系统注意事项(总结)
- “ping”程序知多少
- Python文件操作读写文件
- 3句代码,完成ASP.NET应用程序SESSION丢失跳转到登录界面
- FlvPlayer播放器界面展示
- TextView和EditText中显示图片
- 一个简单的HTML标签搞死64位的 Windows 7
- 视频跟踪——为什么卡尔曼滤波只能用于解决线性高斯系统
- 高通协议分层
- 查看android內存等使用情況
- 关于Sikuli使用过程中java.lang.UnsatisfiedLinkError错误的解决
- NS2中数据包Packet分析
- ie6 在js 定义对像的时候不要有一个空白的逗号
- 2011年11月11日