android按钮在小屏幕设备中缩小

android按钮在小屏幕设备中缩小,android,android-layout,Android,Android Layout,我有下面的布局。底部的id=btn有一个按钮,里面有一个文本,这个按钮在大屏幕手机上看起来不错,但在小屏幕上看起来像一条线,没有可见的文本。如何修复它 谢谢 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" androi

我有下面的布局。底部的id=btn有一个按钮,里面有一个文本,这个按钮在大屏幕手机上看起来不错,但在小屏幕上看起来像一条线,没有可见的文本。如何修复它

谢谢

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="10dip" >

    <!-- Name Label -->

    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="60dp"
            android:layout_height="100dp"
            android:src="@drawable/img_na" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_below="@+id/imageView1"
            android:layout_marginBottom="5dip"
            android:layout_marginTop="10dip"
            android:text="Name:"
            android:textStyle="bold" />

        <TextView
            android:id="@+id/hide_name"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:layout_marginTop="10dip"
            android:clickable="true"
            android:onClick="hideBtnClicked"
            android:text="hidden   (change)"
            android:textColor="@color/editRed"
            android:textSize="12dip"
            android:visibility="gone" />
    </RelativeLayout>

    <!-- Name Value -->

    <EditText
        android:id="@+id/name"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />

    <!-- Address Label -->

    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <TextView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="5dip"
            android:layout_marginTop="15dip"
            android:text="Address:"
            android:textStyle="bold" />

        <TextView
            android:id="@+id/hide_addr"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:layout_marginTop="10dip"
            android:clickable="true"
            android:onClick="hideBtnClicked"
            android:text="hidden   (change)"
            android:textColor="@color/editRed"
            android:textSize="12dip"
            android:visibility="gone" />
    </RelativeLayout>

    <!-- Address Value -->

    <EditText
        android:id="@+id/address"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />

    <!-- Phone Number Label -->

    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <TextView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="5dip"
            android:layout_marginTop="15dip"
            android:text="Phone:"
            android:textStyle="bold" />

        <TextView
            android:id="@+id/hide_ph"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:layout_marginTop="10dip"
            android:clickable="true"
            android:onClick="hideBtnClicked"
            android:text="hidden   (change)"
            android:textColor="@color/editRed"
            android:textSize="12dip"
            android:visibility="gone" />
    </RelativeLayout>

    <!-- Phone Value -->

    <EditText
        android:id="@+id/phone"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />

    <!-- Location Value -->

    <EditText
        android:id="@+id/location"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="5dip"
        android:layout_marginTop="15dip" />

    <TextView
        android:id="@+id/distance"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="5dip"
        android:layout_marginTop="15dip" />

    <Button
        android:id="@+id/btn"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:minHeight="40dp"
        android:text="to retain heigth" />

</LinearLayout>


编辑:感谢您建议scrollvew,但我希望按钮始终可见,因此我不想使其可滚动。其次,内容也不是很长,使其可滚动,我运行的只有几个dps短。所以我想避免滚动查看。我只想让整个内容根据屏幕大小按高度缩小一点。

您可以使用滚动视图来允许内容滚动到每个屏幕大小

希望有帮助。

是使用滚动视图
       yes use scroll view 


  <ScrollView android:id="@+id/ScrollView01"
   xmlns:android="http://schemas.android.com/apk/res/android"
   android:fillViewport="true" 
   android:layout_width="fill_parent"
   android:background="#ffffff"
   android:layout_height="wrap_content">
   <RelativeLayout 
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:orientation="vertical"
   >

    <Button
    android:id="@+id/button1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:text="Button" />

    <Button
    android:id="@+id/button2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/button1"
    android:layout_centerHorizontal="true"
    android:text="Button" />
    <Button
    android:id="@+id/button3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/button2"
    android:layout_alignParentLeft="true"
    android:layout_centerHorizontal="true"
    android:text="Button" />
   <Button
    android:id="@+id/button4"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/button3"
    android:layout_alignParentRight="true"
    android:layout_centerHorizontal="true"
    android:text="Button" />
   <Button
    android:id="@+id/button5"
    android:layout_width="wrap_content"
    android:layout_height="70dp"
    android:layout_below="@+id/button4"
    android:layout_alignParentRight="true"
    android:layout_centerHorizontal="true"
    android:text="Button" />
    <Button
    android:id="@+id/button6"
    android:layout_width="wrap_content"
    android:layout_height="150dp"
    android:layout_below="@+id/button5"
    android:layout_alignParentLeft="true"
    android:layout_centerHorizontal="true"
    android:text="Button" />
    <Button
    android:id="@+id/button7"
    android:layout_width="wrap_content"
    android:layout_height="150dp"
    android:layout_below="@+id/button6"

    android:layout_centerHorizontal="true"
    android:text="Button" />
    </RelativeLayout>
    </ScrollView>

我想您可能需要检查
GridLayout
以了解这种情况。但是GridLayout要求API级别14或更高!任何API级别低于14的设备都无法与您的应用程序兼容


您还可以将v7 gridlayout库用于低于14级的API。我想你可以通过谷歌很容易找到一个例子

您好,谢谢您的回复,但正如我在编辑中提到的,出于上述原因,我不想使用scrollview。