很多app有这种需求,实现字体小中大字体设置,仿照QQ的字体。经过测试,下面代码完美实现,需要重启APP才能生效。

上核心代码

public class MainActivity extends Activity {
@InjectView(R.id.btn_skip1)Button btnSkip1;@InjectView(R.id.btn_skip2)Button btnSkip2;@InjectView(R.id.btn_skip3)Button btnSkip3;@Overridepublic void onCreate( Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    int state = SpUtils.getSPValue(this,"s",1);    if(state==1){        setTheme(R.style.Default_TextSize_Small);    }else if(state==2){        setTheme(R.style.Default_TextSize_Middle);    }else{        setTheme(R.style.Default_TextSize_Big);    }    setContentView(R.layout.activity_main);    ButterKnife.inject(this);}@OnClick({R.id.btn_skip1, R.id.btn_skip2, R.id.btn_skip3})public void onClick(View view) {    switch (view.getId()) {        case R.id.btn_skip1:            SpUtils.putSPValue(this,"s",1);            break;        case R.id.btn_skip2:            SpUtils.putSPValue(this,"s",2);            break;        case R.id.btn_skip3:            SpUtils.putSPValue(this,"s",3);            break;    }}}

布局文件

<?xml version="1.0" encoding="utf-8"?>                

新建attrs文件,定义字体属性

<?xml version="1.0" encoding="utf-8"?>                                        

自定义style属性

定义dimen文件

21sp20sp19sp18sp17sp16sp15sp14sp13sp12sp11sp10sp9sp

就是这样子,谢谢阅览。有其他问题欢迎留言,也可以小小打赏一下哦,你的鼓励是我最大的进步。

邮箱:845561290@qq.com

更多相关文章

  1. Android: 缩放图片文件引起的OOM异常
  2. Android(安卓)gradle 统一依赖库版本
  3. 记录升级Android(安卓)studio3.0遇到的一些问题和解决方法
  4. 关于 android 远程控制(pc 控制手机)
  5. 将Android下的可执行文件以静态库的形式进行编译
  6. Android(安卓)animation学习笔记之view/drawable animation
  7. Android用Sax,Pull,Dom解析xml
  8. mono for android之文件系统与应用程序首选项
  9. android之简单数据存储Preference

随机推荐

  1. 【移动开发】Android中各种xml汇总
  2. 增加Android可用内存
  3. 动态绘制CheckedTextView
  4. android重要控件各种大全
  5. Android(安卓)UID 问题 uid 改变进行了覆
  6. 介绍三个Android支持库控件:TabLayout+Vie
  7. 【Android】如何调节屏幕亮度,关闭屏幕
  8. Android横竖屏切换不重新调用onCreate()
  9. 如何减少RadioButton与文字的间距?
  10. List of Android(安卓)MIME types and Ur