0

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

<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>
4

1 回答 1

0

您不需要将您的TextView放入 aHorizontalScrollView中,当文本超出范围时它会自动变为可滚动的。请参阅文档: http: //developer.android.com/reference/android/widget/TextView.html#attr_android :scrollHorizo​​ntally

只需添加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

于 2013-04-05T05:18:42.443 回答