适应视图屏幕分辨率较低 [英] Adapt view for screens with lower resolution
问题描述
我测试我的应用程序,我开发了在过去两个月一直在用5英寸的智能手机。现在,我有我的展示视图的所有内容大问题。
首先,here's我的XML:
<的FrameLayout的xmlns:机器人=http://schemas.android.com/apk/res/android
的xmlns:工具=http://schemas.android.com/tools
机器人:layout_width =match_parent
机器人:layout_height =match_parent
工具:上下文=。MainActivity
机器人:背景=@绘制/ BG>< TableLayout 机器人:layout_width =match_parent
机器人:layout_height =match_parent>
<的TableRow
机器人:ID =@ + ID / tableRow1
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT> <按钮
机器人:ID =@ + ID /按钮1
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:背景=@绘制/威利
/> <按钮
机器人:ID =@ + ID /按钮2
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginLeft =70dp
机器人:背景=@绘制/威利
/> <按钮
机器人:ID =@ + ID /按钮3
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginLeft =140dp
机器人:背景=@绘制/威利
/> <按钮
机器人:ID =@ + ID /将Button4
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginLeft =210dp 机器人:背景=@绘制/威利
/>
< /&的TableRow GT;
<的TableRow
机器人:ID =@ + ID / tableRow2
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginTop =90dp> <按钮
机器人:ID =@ + ID / button5
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT 机器人:背景=@绘制/威利
/> <按钮
机器人:ID =@ + ID / button6
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginLeft =70dp
机器人:背景=@绘制/威利
/> <按钮
机器人:ID =@ + ID / button7
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginLeft =140dp
机器人:背景=@绘制/威利
/> <按钮
机器人:ID =@ + ID /按钮8
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginLeft =210dp
机器人:背景=@绘制/威利
/> < /&的TableRow GT;
<的TableRow
机器人:ID =@ + ID / tableRow3
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginTop =90dp>
<按钮
机器人:ID =@ + ID /按钮9
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT 机器人:背景=@绘制/威利/>
<按钮 机器人:ID =@ + ID / button10
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginLeft =70dp
机器人:背景=@绘制/威利/> <按钮
机器人:ID =@ + ID / button11
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginLeft =140dp
机器人:背景=@绘制/威利/> <按钮
机器人:ID =@ + ID / button12
机器人:layout_marginLeft =210dp
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT 机器人:背景=@绘制/威利/> < /&的TableRow GT; <的TableRow
机器人:ID =@ + ID / tableRow4
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginTop =90dp>
<按钮
机器人:ID =@ + ID / button13
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT 机器人:背景=@绘制/威利/>
<按钮 机器人:ID =@ + ID / button14
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginLeft =70dp
机器人:背景=@绘制/威利/> <按钮
机器人:ID =@ + ID / button15
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginLeft =140dp
机器人:背景=@绘制/威利/> <按钮
机器人:ID =@ + ID / button16
机器人:layout_marginLeft =210dp
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT 机器人:背景=@绘制/威利/> < /&的TableRow GT; <的TableRow
机器人:ID =@ + ID / tableRow5
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginTop =90dp>
<按钮
机器人:ID =@ + ID / button17
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT 机器人:背景=@绘制/威利/>
<按钮 机器人:ID =@ + ID / button18
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginLeft =70dp
机器人:背景=@绘制/威利/> <按钮
机器人:ID =@ + ID / button19
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginLeft =140dp
机器人:背景=@绘制/威利/> <按钮
机器人:ID =@ + ID / button20
机器人:layout_marginLeft =210dp
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT 机器人:背景=@绘制/威利/> < /&的TableRow GT; <的TableRow
机器人:ID =@ + ID / tableRow6
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginTop =90dp>
<按钮
机器人:ID =@ + ID / button21
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT 机器人:背景=@绘制/威利/>
<按钮 机器人:ID =@ + ID / button22
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginLeft =70dp
机器人:背景=@绘制/威利/> <按钮
机器人:ID =@ + ID / button23
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_marginLeft =140dp
机器人:背景=@绘制/威利/> <按钮
机器人:ID =@ + ID / button24
机器人:layout_marginLeft =210dp
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT 机器人:背景=@绘制/威利/>
< /&的TableRow GT; < / TableLayout><的TextView
机器人:ID =@ + ID / tvPunktewaehrend
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_alignParentRight =真
机器人:文字样式=大胆
机器人:layout_gravity =CENTER_HORIZONTAL
机器人:文字颜色=@色/白
机器人:TEXTSIZE =20SP
机器人:文字=/>
< /&的FrameLayout GT;
就像你看到的,我有每4个按键6表行。在HTC野火我看到第五行非常小,第六个是我的看法。
我该如何解决这个问题的小屏幕?
我看到第五行非常小,第六个是我的看法。
我该如何解决这个问题的小屏幕?
块引用>所以,你可以在不同的分辨率看你的布局中使用dimens.xml文件,在其中您可以根据您的要求把你的属性,如填充/利润率。
dimens.xml的内容可以是这样:
<资源> <! - 默认屏幕空间,每个Android的设计指南。 - >
<扪NAME =activity_horizontal_margin>&16DP LT; /扪>
<扪NAME =activity_vertical_margin>&16DP LT; /扪>< /资源>根据您的屏幕尺寸/分辨率,你必须把这个文件为:
RES /价值/ dimens.xmlRES /价值观华电国际/ dimens.xmlRES /价值观MDPI / dimens.xmlRES /价值观sw360dp - 华电国际/ dimens.xmlRES /价值观sw360dp超长xhdpi / dimens.xmlRES /价值观sw600dp / dimens.xmlRES /价值观sw720dp土地/ dimens.xml
要使用这个值:
对于如
你的表行1>按钮2:
把的android:layout_marginLeft =@扪/ activity_horizontal_margin
而不是
的android:layout_marginLeft =70dp
I tested my app, that I developed over the past two months always on a smartphone with 5 inches. Now, I have big problem with showing all the content of my view.
First, here´s my xml:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" android:background="@drawable/bg"> <TableLayout android:layout_width="match_parent" android:layout_height="match_parent"> <TableRow android:id="@+id/tableRow1" android:layout_width="wrap_content" android:layout_height="wrap_content" > <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/willi" /> <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="70dp" android:background="@drawable/willi" /> <Button android:id="@+id/button3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="140dp" android:background="@drawable/willi" /> <Button android:id="@+id/button4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="210dp" android:background="@drawable/willi" /> </TableRow> <TableRow android:id="@+id/tableRow2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="90dp"> <Button android:id="@+id/button5" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/willi" /> <Button android:id="@+id/button6" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="70dp" android:background="@drawable/willi" /> <Button android:id="@+id/button7" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="140dp" android:background="@drawable/willi" /> <Button android:id="@+id/button8" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="210dp" android:background="@drawable/willi" /> </TableRow> <TableRow android:id="@+id/tableRow3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="90dp" > <Button android:id="@+id/button9" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/willi" /> <Button android:id="@+id/button10" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="70dp" android:background="@drawable/willi" /> <Button android:id="@+id/button11" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="140dp" android:background="@drawable/willi" /> <Button android:id="@+id/button12" android:layout_marginLeft="210dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/willi" /> </TableRow> <TableRow android:id="@+id/tableRow4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="90dp" > <Button android:id="@+id/button13" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/willi" /> <Button android:id="@+id/button14" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="70dp" android:background="@drawable/willi" /> <Button android:id="@+id/button15" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="140dp" android:background="@drawable/willi" /> <Button android:id="@+id/button16" android:layout_marginLeft="210dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/willi" /> </TableRow> <TableRow android:id="@+id/tableRow5" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="90dp" > <Button android:id="@+id/button17" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/willi" /> <Button android:id="@+id/button18" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="70dp" android:background="@drawable/willi" /> <Button android:id="@+id/button19" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="140dp" android:background="@drawable/willi" /> <Button android:id="@+id/button20" android:layout_marginLeft="210dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/willi" /> </TableRow> <TableRow android:id="@+id/tableRow6" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="90dp" > <Button android:id="@+id/button21" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/willi" /> <Button android:id="@+id/button22" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="70dp" android:background="@drawable/willi" /> <Button android:id="@+id/button23" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="140dp" android:background="@drawable/willi" /> <Button android:id="@+id/button24" android:layout_marginLeft="210dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/willi" /> </TableRow> </TableLayout> <TextView android:id="@+id/tvPunktewaehrend" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:textStyle="bold" android:layout_gravity="center_horizontal" android:textColor="@color/white" android:textSize="20sp" android:text=" " /> </FrameLayout>
Like you see, I have 6 table rows with 4 buttons in each. On the HTC Wildfire I see the fifth row very small and the sixth one is out of my view. How can I solve this problem for small screens?
解决方案I see the fifth row very small and the sixth one is out of my view. How can I solve this problem for small screens?
So you can use dimens.xml file in which you can put your attributes like padding/margins according to your requirement by seeing your layout in different resolutions.
The Contents of dimens.xml can be like:
<resources> <!-- Default screen margins, per the Android Design guidelines. --> <dimen name="activity_horizontal_margin">16dp</dimen> <dimen name="activity_vertical_margin">16dp</dimen> </resources>
According to your screen size/resolution you have to put this file as:
res/values/dimens.xml res/values-hdpi/dimens.xml res/values-mdpi/dimens.xml res/values-sw360dp-hdpi/dimens.xml res/values-sw360dp-long-xhdpi/dimens.xml res/values-sw600dp/dimens.xml res/values-sw720dp-land/dimens.xml
To use this value: For e.g. Your Table Row 1 > Button 2 : Put
android:layout_marginLeft="@dimen/activity_horizontal_margin"
instead of
android:layout_marginLeft="70dp"
这篇关于适应视图屏幕分辨率较低的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!