0

我有一个活动,其信息可能超出活动的水平宽度,有没有办法添加水平滚动条,以便用户可以根据需要左右滚动?

我的activity_fuel.xml

<RelativeLayout 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"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
<TableLayout android:id="@+id/TableLayout01" android:layout_width="fill_parent" android:layout_height="wrap_content"  android:stretchColumns="0">

  <TableRow 
      android:id="@+id/TableRow01" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content">    

    <TextView
        android:id="@+id/TextView01"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/cell_shape"
        android:enabled="true"
        android:scrollHorizontally="true"
        android:text="@string/title_activity_address"
        android:textStyle="bold"
        android:width="100px" >

    </TextView>
    <TextView 
        android:id="@+id/textView02" 
        android:background="@drawable/cell_shape"
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:text="@string/title_activity_phone"
        android:width="150px"
        android:textStyle="bold">
    </TextView>

    <TextView
        android:id="@+id/TextView03"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/cell_shape"
        android:scrollHorizontally="true"
        android:text="@string/title_activity_distance"
        android:textStyle="bold"
        android:width="100px" >
    </TextView>
  </TableRow>
</TableLayout>  


</RelativeLayout>

我对 Android 开发相当陌生,只是想让这些信息看起来有点令人愉悦。

4

1 回答 1

2

1)您不应该使用像素(px)来设置Views 的大小,而是使用与密度无关的像素(dp),因为它更适合支持许多不同的屏幕尺寸/分辨率/像素密度。在这里阅读更多:http: //developer.android.com/guide/practices/screens_support.html

2)像这样关闭TextView标签:<TextView ... />而不是<TextView ...></TextView>. 它都做同样的事情,用标签之间没有任何东西的东西制作一对标签似乎很奇怪......

3)如果你只在里面放一件东西,布局通常是没用的。在这里,您有一个RelativeLayout并且其中只有一个TableLayout. 您可以删除RelativeLayout并将所有尺寸设置为TableLayout

4) 不要使用fill_parent, use match_parent,它们的作用基本相同,但fill_parent自 API 8 以来已被弃用。如果您的目标是较低的 API 级别,您可能可以使用fill_parent,但绝对不要同时使用两者。match_parent 和 fill_parent 有什么区别?

5)要了解您实际询问的内容 - 您可以将您的内容包装TableLayoutHorizontalScrollView. 所以基本上RelativeLayoutHorizontalScrollView. 应该做你想做的。

希望能帮助到你。如果某些事情不起作用或您还有其他问题,请不要害怕提问。

于 2013-04-26T22:46:59.527 回答