Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 根据屏幕大小调整文本-Google Nexus 5示例_Android_Xml_Text_Text Size_Nexus 5 - Fatal编程技术网

Android 根据屏幕大小调整文本-Google Nexus 5示例

Android 根据屏幕大小调整文本-Google Nexus 5示例,android,xml,text,text-size,nexus-5,Android,Xml,Text,Text Size,Nexus 5,我最近在AWS设备场上运行了一些测试,并震惊地发现我的文本大小没有适当地缩放 目前,我的文本大小有不同的文件夹: values <resources> <!-- Default screen margins, per the Android Design guidelines. --> <dimen name="activity_horizontal_margin">16dp</dimen> <dimen name="activity_ver

我最近在AWS设备场上运行了一些测试,并震惊地发现我的文本大小没有适当地缩放

目前,我的文本大小有不同的文件夹:

values
<resources>
<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
<dimen name="fab_margin">16dp</dimen>
<dimen name="center_indentation">80dp</dimen>
<dimen name="poll_question_text_size">14dp</dimen>
<dimen name="margin_left">80dp</dimen>
<dimen name="margin_bottom">8dp</dimen>
<dimen name="radio_button_answer_text_size">12dp</dimen>
<dimen name="answer_label_text_size">6dp</dimen>
<dimen name="answer_value_label_text_size">8dp</dimen>
<dimen name="vote_count_label_text_size">11dp</dimen>
值
16dp
16dp
16dp
80dp
14dp
80dp
8dp
12dp
6dp
8dp
11dp

values-sw600dp
16dp
16dp
16dp
80dp
22dp
160dp
14dp
16dp
9dp
10dp
13dp

values-sw720dp
16dp
16dp
16dp
80dp
30dp
185dp
20dp
18dp
10dp
12dp
14dp

在每个文件夹中,我创建一个dimens.xml文件,用于为给定屏幕提取适当的文本大小

我去了DeviceMetrics网站,发现他在专门研究谷歌Nexus5。在我运行emulator之后,Nexus5似乎正在从我的sw600dp文件夹中取出。我不知道为什么,它生成的文本大小是我希望在7英寸平板电脑上看到的,而不是在4.5英寸手持设备上看到的

我读过无数关于StackOverflow的帖子,但找不到任何方法正确解释所有设备。我知道有6英寸、7英寸、8英寸、9英寸和10英寸的设备,我想确保我考虑了每种尺寸

下面是我的文本如何查找我的Google Nexus 5,注意我指的是单选按钮大小项:


指定文本大小时,始终使用sp

<TextView android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="20sp" />

您的dimens xml文件中的文本大小值是多少?编辑以提供特定的文件夹尺寸根据文档指定文本大小时始终使用
sp
请参见我不认为dimens文件夹允许sp引用,而且我正在编程设置大小我相信在dimens xml文件中允许sp,我正在使用m多年来一直有效:)它有效,对利润率来说也是同样的逻辑吗?@tccpg288不,这不适用于边距、填充、宽度和高度,因为android根据xml文件呈现UI。以编程方式更改视图将是ars的痛苦。此外,最好不要在java代码中更改文本大小,因为文本视图的大小也不会更改,因为它是静态的。
values-sw720dp
<resources>
<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
<dimen name="fab_margin">16dp</dimen>
<dimen name="center_indentation">80dp</dimen>
<dimen name="poll_question_text_size">30dp</dimen>
<dimen name="margin_left">185dp</dimen>
<dimen name="margin_bottom">20dp</dimen>
<dimen name="radio_button_answer_text_size">18dp</dimen>
<dimen name="answer_label_text_size">10dp</dimen>
<dimen name="answer_value_label_text_size">12dp</dimen>
<dimen name="vote_count_label_text_size">14dp</dimen>
<TextView android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="20sp" />
<dimen name="text_size">13sp</dimen>
textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 20);