Android 水平滚动条正在剪切文本

标签 android view textview scrollview horizontalscrollview

我有一个包含线性布局的 ScrollView。线性布局包含多个 TextView ,所有 TextView 的底部 25% 的文本都被切除(见图)。我希望文本完全可见,没有滚动条可见。

此时我的假设是水平滚动条占据了该空间。

我已经隐藏了滚动条本身(根据需要),但它原来所在的空白区域遮挡了 ScrollView 中的文本。

  • 以编程方式禁用滚动条不起作用。
  • 增加线性布局的布局边距没有效果。
  • 增加 ScrollView 的内边距没有效果。

enter image description here

这是我的布局中的相关 xml:

<HorizontalScrollView android:layout_alignParentLeft="true" android:layout_alignParentBottom="true" android:id="@+id/ValuePicker" android:layout_width="160dp" android:scrollbars="none" android:layout_height="40dp" android:paddingBottom="5dp">
    <LinearLayout android:orientation="horizontal" android:layout_height="40dp" android:id="@+id/ValueLayout" android:layout_width="fill_parent" android:layout_gravity="bottom">
        <TextView android:layout_gravity="left|center_vertical" android:textSize="25dp" android:layout_height="wrap_content" android:id="@+id/value1" android:layout_width="wrap_content" android:text="A" android:padding="8dp" android:clickable="true"></TextView>
        <TextView android:layout_gravity="left|center_vertical" android:text="2" android:scrollbarAlwaysDrawHorizontalTrack="false" android:id="@+id/value2" android:clickable="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="25dp" android:padding="8dp"></TextView>
        <TextView android:layout_gravity="left|center_vertical" android:textSize="25dp" android:layout_height="wrap_content" android:id="@+id/value3" android:layout_width="wrap_content" android:text="3" android:padding="8dp" android:clickable="true" android:scrollbarAlwaysDrawHorizontalTrack="false"></TextView>
        <TextView android:layout_gravity="left|center_vertical" android:textSize="25dp" android:layout_height="wrap_content" android:id="@+id/value4" android:layout_width="wrap_content" android:text="4" android:padding="8dp" android:clickable="true" android:scrollbarAlwaysDrawHorizontalTrack="false"></TextView>
        <TextView android:textSize="25dp" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_gravity="left|center_vertical" android:id="@+id/value5" android:text="5" android:padding="8dp" android:clickable="true" android:scrollbarAlwaysDrawHorizontalTrack="false"></TextView>
        <TextView android:textSize="25dp" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_gravity="left|center_vertical" android:id="@+id/value6" android:text="6" android:padding="8dp" android:clickable="true" android:scrollbarAlwaysDrawHorizontalTrack="false"></TextView>
        <TextView android:layout_height="wrap_content" android:clickable="true" android:padding="8dp" android:scrollbarAlwaysDrawHorizontalTrack="false" android:layout_gravity="left|center_vertical" android:textSize="25dp" android:id="@+id/value7" android:layout_width="wrap_content" android:text="7"></TextView>
        <TextView android:layout_height="wrap_content" android:clickable="true" android:padding="8dp" android:scrollbarAlwaysDrawHorizontalTrack="false" android:layout_gravity="left|center_vertical" android:textSize="25dp" android:id="@+id/value8" android:layout_width="wrap_content" android:text="8"></TextView>
        <TextView android:layout_height="wrap_content" android:clickable="true" android:padding="8dp" android:scrollbarAlwaysDrawHorizontalTrack="false" android:layout_gravity="left|center_vertical" android:textSize="25dp" android:id="@+id/value9" android:layout_width="wrap_content" android:text="9"></TextView>
        <TextView android:layout_height="wrap_content" android:clickable="true" android:padding="8dp" android:scrollbarAlwaysDrawHorizontalTrack="false" android:layout_gravity="left|center_vertical" android:textSize="25dp" android:id="@+id/value10" android:layout_width="wrap_content" android:text="10"></TextView>
        <TextView android:layout_height="wrap_content" android:clickable="true" android:padding="8dp" android:scrollbarAlwaysDrawHorizontalTrack="false" android:layout_gravity="left|center_vertical" android:textSize="25dp" android:id="@+id/value11" android:layout_width="wrap_content" android:text="J"></TextView>
        <TextView android:layout_height="wrap_content" android:clickable="true" android:padding="8dp" android:scrollbarAlwaysDrawHorizontalTrack="false" android:layout_gravity="left|center_vertical" android:textSize="25dp" android:id="@+id/value12" android:layout_width="wrap_content" android:text="Q"></TextView>
        <TextView android:layout_height="wrap_content" android:clickable="true" android:padding="8dp" android:scrollbarAlwaysDrawHorizontalTrack="false" android:layout_gravity="left|center_vertical" android:textSize="25dp" android:id="@+id/value13" android:layout_width="wrap_content" android:text="K"></TextView>
    </LinearLayout>
</HorizontalScrollView>

最佳答案

看起来您正在使用填充。尝试从底部移除填充物。如果您想保留内边距,请将高度从 40dp 增加到 45dp。

所以大小和填充是问题所在。

Soln 1(如果可以增加大小):

Horizo​​ntalScrollViewLinearLayout 的大小增加到 android:layout_height="60dp" 之类的大小,这样文本就不会被剪裁。

Soln 2(如果可以去掉垂直填充):

下面的布局适用于我删除了垂直填充的 2 。当你只是说 padding=5 时,它会填充它。

        <TextView
            android:id="@+id/value2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="left|center_vertical"
            android:clickable="true"
            android:paddingLeft="8dp"
            android:paddingRight="8dp"
            android:scrollbarAlwaysDrawHorizontalTrack="false"
            android:text="2"
            android:textSize="25dp" >
        </TextView>

现在根据您的需要选择合适的解决方案。

关于Android 水平滚动条正在剪切文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8497767/

相关文章:

java - Android (Java) 中 MediaRecorder 的 LocalSocket(Unix 域)客户端-服务器数据流问题

android - 当 ViewPager 中的 Fragment 设置为当前页面时的回调

android - 设置 LinearLayout 的最大宽度

android - 上标影响行高

android - 填充具有 9-patch 背景的 TextView 没有视觉效果

java - 谷歌探戈Java API : Scene update with Rajawali3D

sql-server - 如何在 XML PATH 查询上创建 View 或函数?

c++ - 数据未显示在 TableView 中

mysql - 使用 View 从多个表中获取数据

android - 如何识别在 Android 中捏合缩放的 View ?