TextView使用Horizo​​ntalScrollView将按钮推离屏幕

时间:2013-04-05 04:47:13

标签: android button textview scrollview horizontalscrollview

我的目标是布局类似于原生计算器应用程序。我希望文本在屏幕左侧跟踪而不移动右侧的按钮。目前,我的文字向左移动,直到填满屏幕,此时按钮被推离右边缘。

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="top"
    android:layout_weight="1"
    android:gravity="right"
    android:orientation="horizontal" >

    <HorizontalScrollView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:scrollbars="none" >

        <TextView
            android:id="@+id/display_view"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:singleLine="true"
            android:textColor="@android:color/white"
            android:textIsSelectable="true"
            android:textSize="30sp" />
    </HorizontalScrollView>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        <Button
            android:id="@+id/delete_button"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:onClick="onDelete"
            android:text="@string/delete_button" />

        <Button
            android:id="@+id/equate_button"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:onClick="onEquate"
            android:text="@string/equate_button" />
    </LinearLayout>
</LinearLayout>

1 个答案:

答案 0 :(得分:0)

您不需要将TextView放入HorizontalScrollView,当文字超出界限时,它会自动变为可滚动。请参阅文档:http://developer.android.com/reference/android/widget/TextView.html#attr_android:scrollHorizontally

只需将android:scrollHorizontally="true"添加到布局中的TextView即可。

您可能还需要将文本视图的layout_weight更改为0或将其layout_width设置为固定的(例如100dp)。

要使文本从右向左,请将TextView上的重力设置为android:gravity="right|center_vertical"

我也谦虚地向您推荐您试图模仿的计算器应用程序的来源:https://github.com/android/platform_packages_apps_calculator/tree/master/src