2014-05-01 82 views
1

我有一个ScrollView与各种不同的TextView。我用sp作为文本单位,但是我无法获得所有屏幕尺寸的良好视觉效果。如何按比例缩放各种TextView

我只能找到一个单一的sceen大小的完美的文字大小,如果我试图找到一个尺寸也显示在不同的屏幕尺寸上的好结果,无论我尝试用于文本的SP大小总是太小大显示屏有太多的空白空间,或过大的屏幕较小,

看到这个样本(右图像上进行过空白空间(大屏幕)) enter image description here

我已经看到自动调整Twextview的一些实现,但这不是一个好的选择,因为各种文本行的不同长度会导致每行都使用不同的文本大小,而且审美结果不好。 我需要一个praticable的方式按比例缩放所有TextView

+1

我想你必须有不同的xml的不同的屏幕尺寸。 – vjdhama

+0

为什么不为每种屏幕类型创建不同的维度?在值文件夹(和其他太值 - *)创建一个dimens.xml文件,并在您的文本视图中使用@维斯/名称....这是你的问题? –

+0

我有很多不同的TextView需要不同的大小(如标题较大,建议较小等)的布局中的这个问题,我不知道如果这个解决方案是可编程的。尝试所有屏幕的最佳尺寸,并定义不同的布局需要太多时间 – AndreaF

回答

1

使用风格的TextView - 样式

<style name="MyDefaultTextAppearance" parent="@android:style/TextAppearance">  
<item name="android:textSize">12sp</item>  
<item name="android:textColor">#333</item>  
<item name="android:textStyle">bold</item> 
</style> 

把它与相同的密钥和不同的价值观在styles.xml的各种值的文件夹为u required.folder名称,如values,values-v11,values-sw600dp等,并看到结果

+0

我可以使用不同的风格设计不同的TextView吗?这种方法和使用'dimens.xml'有什么区别? – AndreaF

+0

是的,你可以肯定做到这一点。你可以按照这个链接进行比较http://forums.devshed.com/android-development-165/android-dimens-xml-styles-xml-948389.html,据我了解的是对于样式方法,您需要为任何视图添加只有属性集合的样式,而不是使用维度值指定所有类型。 – Manmohan