android TextView控件如何解决一个文本中出现不同大小的字体
2015-04-02 22:55
686 查看
由于公司的设计需求,导致我研究了一段时间,网上找了一下。很多人都说把它转换成html格式解析,也就是所谓的Html.fromHtml()这个方法,不过这个方法能力比较有限,android支持html并不是完全支持的,所以这个方法不是太好用。后来找了很多东西,终于找到了解决方法。
![](http://img.blog.csdn.net/20150402230859332?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxNDEyODg4NQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
至于布局文件,里面不过是一个id为text1的TextView控件而已。
package com.Yuriko.textsize; import android.app.Activity; import android.appwidget.AppWidgetManager; import android.content.ComponentName; import android.os.Bundle; import android.text.Html; import android.text.Spannable; import android.text.SpannableString; import android.text.style.AbsoluteSizeSpan; import android.view.Menu; import android.widget.RemoteViews; import android.widget.TextView; public class MainActivity extends Activity { private TextView text1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //设置两个对象,给后面的33-35行使用,不过貌似我用不了, //网上一些资料上说貌似可以用,但是我没有做出来 RemoteViews views =new RemoteViews(this.getPackageName(), R.layout.activity_main); AppWidgetManager appWidgetManager=AppWidgetManager.getInstance(this); text1=(TextView)findViewById(R.id.text1); //设置文本内容,当然你也可以通过下面获取控件id的方式获取文本内容 Spannable span=new SpannableString("德玛西亚"); //后面的toString()方法可以不加 // Spannable span=new SpannableString(text1.getText().toString()); //第一个参数调节字体的大小,第二个参数设置截取文字的起始点,第三个是设置截取文字的终点,第四个参数不知道 span.setSpan(new AbsoluteSizeSpan(40), 0, 2, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); span.setSpan(new AbsoluteSizeSpan(20), 2, 4, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); // views.setCharSequence(R.id.text1, "setText", span); // ComponentName com = new ComponentName("com.Yuriko.textsize", "com.Yuriko.textsize.MainActivity"); // appWidgetManager.updateAppWidget(com, views); text1.setText(span); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }
至于布局文件,里面不过是一个id为text1的TextView控件而已。
相关文章推荐
- android 一个 textview 设置不同的字体大小和颜色
- 【Android】TextView中不同大小字体如何上下垂直居中?
- Android+HTML 针对android一个控件TextView中文字颜色、大小不同的解决方案
- 如何使用一个textview控件使字体出现两种颜色
- android 一个 textview 设置不同的字体大小和颜色
- android 一个 textview 设置不同的字体大小和颜色
- android 一个 textview 设置不同的字体大小和颜色
- Android中的一个TextView中的字体设置不同大小
- android 一个 textview 设置不同的字体大小和颜色
- Android中的一个TextView中的字体设置不同大小
- 同一个TextView如何显示不同颜色的文字、字体大小、字体样式
- Android中的一个TextView中的字体设置不同大小
- Android 一个TextView中设置文字不同字体大小和颜色的最完整方法
- [转]Android中的一个TextView中的字体设置不同大小
- android 一个TextView中显示不同颜色的字体
- Android实战技巧:用TextView实现Rich Text---在同一个TextView中设置不同的字体风格
- 一个textview显示不同zize大小的文本
- Android实战技巧:用TextView实现Rich Text---在同一个TextView中设置不同的字体风格
- Android实战技巧:用TextView实现Rich Text---在同一个TextView中设置不同的字体风格
- 如何在一个TextView中显示不同颜色的文本