适应视图屏幕分辨率较低 [英] Adapt view for screens with lower resolution

查看:161
本文介绍了适应视图屏幕分辨率较低的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我测试我的应用程序,我开发了在过去两个月一直在用5英寸的智能手机。现在,我有我的展示视图的所有内容大问题。

首先,here's我的XML:

 <的FrameLayout的xmlns:机器人=htt​​p://schemas.android.com/apk/res/android
    的xmlns:工具=htt​​p://schemas.android.com/tool​​s
    机器人: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_horizo​​ntal_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_horizo​​ntal_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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆