我有以下布局。底部有一个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。所以我想避免滚动视图。我只是希望整个内容根据屏幕尺寸缩小一点高度。
答案 0 :(得分:1)
您可以使用ScrollView允许内容滚动到每个屏幕尺寸。
希望它有所帮助。
答案 1 :(得分:1)
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>
答案 2 :(得分:0)
我想你可能想检查GridLayout
这种情况。但GridLayout需要API Level 14
或更高版本!任何API等级低于14的设备都不能与您的应用兼容。
此外,您可以使用v7 gridlayout库,其API级别低于14.我认为您可以通过Google轻松找到一个示例!