Android手机在不同分辨率情况下字体自适应大小
2014-07-10 11:46
549 查看
两种解决方法:
一、
1、首先根据不同分辨率获取不同字体大小。
在RES里创建
values-480x320/strings.xml 里面设置<dimen name="Text_size">30px</dimen>
和
values-800x400/strings.xml 里面设置<dimen name="Text_size">30px</dimen>
分别代表480X320 和 800X400分辨率情况下 字号为30px和40px;
在java文件中这样调用
int sizeOfText = (int) this.getResources().getDimension(R.dimen.Text_size);
二、
1. 在视图的 onsizechanged里获取视图宽度,一般情况下默认宽度是320,所以计算一个缩放比率
rate = (float) w/320 w是实际宽度
2.然后在设置字体尺寸时 paint.setTextSize((int)(8*rate)); 8是在分辨率宽为320 下需要设置的字体大小
实际字体大小 = 默认字体大小 x rate
Java代码
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
android:textSize="@dimen/Text_size"
/>
布局多分辨率适配
一、
1、首先根据不同分辨率获取不同字体大小。
在RES里创建
values-480x320/strings.xml 里面设置<dimen name="Text_size">30px</dimen>
和
values-800x400/strings.xml 里面设置<dimen name="Text_size">30px</dimen>
分别代表480X320 和 800X400分辨率情况下 字号为30px和40px;
在java文件中这样调用
int sizeOfText = (int) this.getResources().getDimension(R.dimen.Text_size);
二、
1. 在视图的 onsizechanged里获取视图宽度,一般情况下默认宽度是320,所以计算一个缩放比率
rate = (float) w/320 w是实际宽度
2.然后在设置字体尺寸时 paint.setTextSize((int)(8*rate)); 8是在分辨率宽为320 下需要设置的字体大小
实际字体大小 = 默认字体大小 x rate
Java代码
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
android:textSize="@dimen/Text_size"
/>
布局多分辨率适配
相关文章推荐
- Android手机在不同分辨率情况下字体自适应大小
- Android手机在不同分辨率情况下字体自适应大小
- Android手机在不同分辨率情况下字体自适应大小
- Android手机在不同分辨率情况下字体自适应大小
- qt android开发篇之如何实现在不同分辨率手机中自适应字体大小,或者像素什么的
- 【Android随记】-- 不同分辨率下字体自适应大小
- Android 不同分辨率下字体自适应大小
- android开发:在不同分辨率,不同屏幕密度dpi的平板上的字体大小和布局的自适应
- Android 学习笔记 - 【Android自适应不同分辨率或不同屏幕大小】
- Android自适应不同分辨率或不同屏幕大小的layout布局(横屏|竖屏)
- Android 不同分辨率下如何使字体大小随之变化
- Android自适应不同分辨率或不同屏幕大小 (转)
- Android自适应不同分辨率或不同屏幕大小的layout布局(横屏|竖屏)
- Android自适应不同分辨率或不同屏幕大小的layout布局
- Android程序对不同手机屏幕分辨率自适应
- [转]Android自适应不同分辨率或不同屏幕大小的layout布局(横屏|竖屏)
- Android:自适应不同分辨率的屏幕大小、方向和不同分辨率的字体大小
- android如何在代码中让字体大小在不同分辨率中随之变化?
- Android自适应不同分辨率或不同屏幕大小
- Android不同手机屏幕分辨率自适应