java - Android 在 TextSwitcher 中滚动文本

标签 java android

我有一个 texSwitcher,我向其中添加了两个 TextView (使用 TextView 类动态创建)。我正在使用手势检测器在子 TextView 之间切换。但是,当文本太大而无法容纳当前可视区域时,滚动对于文本切换器不起作用。

当我尝试使用子 TextView 的 setTextMovement 方法时,TextSwitcher 停止监听水平滑动手势。

有人成功地在 TextSwitcher 中显示可滚动 TextView 吗?

最佳答案

我通过创建自己的 TextSwitcher 解决了这个问题。

public class MyOwnSwitcher extends ViewSwitcher {
    public MyOwnSwitcher (Context context) {
        super(context);
    }

    public MyOwnSwitcher (Context context, AttributeSet attrs) {
        super(context, attrs);
    }
}

我将“onTouchEvent”方法移至该新类中。然后我必须重写“onInterceptTouchEvent”方法,如下所示:

@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
    onTouchEvent(ev);
    return super.onInterceptTouchEvent(ev);
}

我还必须将一些字段和变量从 Activity 移至新类。 但您也可以使用您的 Activity 方法:

Activity ac = (Activity) this.getContext();

这应该返回您的 Activity 。

关于java - Android 在 TextSwitcher 中滚动文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16372510/

相关文章:

java - 如何降低 android ScaleGestureDetector.SimpleOnScaleGestureListener 的灵敏度

java - 我如何自定义 EditText Box 以仅允许使用货币?

java - 将当前时间(以毫秒为单位)与共享首选项中保存的时间进行比较

java - 在Java中更改文件路径的字符串

Java Date 转换为 String 并返回 Date,相等性检查失败

android - Android Studio 和 Firebase 中的权限被拒绝错误

java - 创建具有特定高度的空表并在 SWT 中单击按钮时重绘

java - 如何将日志添加到可以动态更改日志级别的java代理

java - 使用 TextInputEditText 在 RecyclerView 中遇到问题

android - 电竞、碰撞现场