【问题标题】:Automatic horizontal scroll in textview with layout_weight使用 layout_weight 在 textview 中自动水平滚动
【发布时间】:2013-08-08 10:02:00
【问题描述】:

我一直在查看其他主题,但找不到答案,所以我的问题来了:

是否可以使用 layout_weight 创建一个自动水平滚动的 TextView,其右侧有一个按钮?

“我在这里的搜索文本非常长”“按钮”

我尝试使用“fill_parent”而不是 0dp 和 layout_weight 来制作一个可滚动的文本视图,但随后整个文本占据了“行”(显然因为它是 fill_parent)并且没有显示按钮并且文本没有'即使当我在 android 虚拟设备中运行它时,也不会水平滚动。

编辑:忘了写我是如何制作可滚动文本视图的

<TextView
 android:singleLine="true"
 android:scrollHorizontally="true"
 android:ellipsize="marquee"
 android:marqueeRepeatLimit="marquee_forever"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
 android:id="@+id/searchResult"
 android:focusable="true"
 android:focusableInTouchMode="true"/>

【问题讨论】:

  • 这个问题已经在这里问过了。看看this
  • 试过了,没用,没有滚动,我不确定你是否阅读了整个问题。问题是是否有可能使用 layout_weight 在其右侧有另一个对象,例如按钮。

标签: android textview horizontal-scrolling


【解决方案1】:

当然可以。这样的事情会做:

<LinearLayout
    android:layout_widht="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">

    <TextView
        android:layout_width="0px"
        android:layout_weight="7"
        .../>

    <Button
        android:layout_width="0px"
        android:layout_weight="3"
        ... />

</LinearLayout>

这里的关键是使宽度为零,以便当权重机制将所有剩余空间分配给与布局权重相关的线性布局组件时,所有水平空间都剩余。

【讨论】:

  • 所以这基本上是不可能的,因为我想要的是一个重量为 0.7 的 TextView 和一个重量为 0.3 的按钮,在同一个 LinearLayout 中?一种还可以自动水平滚动文本
  • @jchiem 当然有可能,我已经更新了答案以反映这一点。
  • @laalto 您可以发布您使用的完整 XML 吗?将您的 XML 与 jchiem 的 XML 结合不会导致文本滚动。
  • @dpk 不能,抱歉。我只是很快写了一些东西来测试它,然后把它扔掉了。但据我记得,并没有什么特别之处,只是简单的复制粘贴。
猜你喜欢
  • 2011-07-25
  • 2020-08-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-03
  • 1970-01-01
  • 2013-11-11
  • 2013-07-30
相关资源
最近更新 更多