AutoScrollableTextViewinKotlin
创始人
2024-11-12 15:00:28
0

实现滚动文本视图需要做以下步骤:

  1. 在 XML 布局文件中定义 TextView,设置其属性以适应需要的大小和样式。

  2. 将 TextView 封装到 ScrollView 控件中,这样可以在 TextView 中包含大量文本而不会影响整个布局。

  3. 为 TextView 创建自定义 Kotlin 类,该类将实现一个可滚动视图,使 TextView 可以滚动并显示全部内容。

下面是实现此功能的代码示例:

在 XML 布局中,使用 ScrollView 包含 TextView,如下所示:


    

在 Kotlin 类中创建 TextView 滚动函数,如下所示:

class AutoScrollTextView(context: Context, attrs: AttributeSet) : TextView(context, attrs) {
    private var mScroller: Scroller? = null
    private var mYScroll: Int = 0

    init {
        mScroller = Scroller(context)
    }

    override fun computeScroll() {
        if (mScroller!!.computeScrollOffset()) {
            scrollTo(0, mScroller!!.currY)
            postInvalidate()
        }
    }

    fun setTextAndView() {
        this.postDelayed(Runnable {
            mYScroll = 0
            mScroller!!.startScroll(0, 0, 0, this.lineHeight * this.lineCount, 25000)
            invalidate()
        }, 200)
    }
}

在主活动文件中实例化自定义视图类并调用 setTextAndView 函数:

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        //获取 TextView
        val myTextView = findViewById(R.id.my_text_view)

相关内容

热门资讯

分享透视!约局吧app有挂吗!... 分享透视!约局吧app有挂吗!好像真的有辅助神器(有挂教学)-哔哩哔哩1、进入到约局吧app有挂吗是...
解迷透视!约局吧德州真的有透视... 解迷透视!约局吧德州真的有透视挂吗!好像一直都是有辅助插件(讲解有挂)-哔哩哔哩一、约局吧德州真的有...
揭露透视!佛手大菠萝辅助!好像... 揭露透视!佛手大菠萝辅助!好像一直都是有辅助脚本(有挂技巧)-哔哩哔哩1、佛手大菠萝辅助破解器简单,...
详细透视!哈糖大菠萝助手!真是... 详细透视!哈糖大菠萝助手!真是是有辅助脚本(有挂教学)-哔哩哔哩1、哈糖大菠萝助手透视辅助软件激活码...
推荐透视!德州之星扫描器!真是... 推荐透视!德州之星扫描器!真是存在有辅助工具(的确有挂)-哔哩哔哩1、首先打开德州之星扫描器辅助器下...
揭幕透视!佛手大菠萝辅助!总是... 揭幕透视!佛手大菠萝辅助!总是有辅助神器(竟然有挂)-哔哩哔哩1、该软件可以轻松地帮助玩家将佛手大菠...
曝光透视!德州透视脚本!确实有... 曝光透视!德州透视脚本!确实有辅助攻略(有挂教程)-哔哩哔哩1、超多福利:超高返利,海量正版游戏,德...
推荐透视!红龙poker辅助平... 推荐透视!红龙poker辅助平台!竟然有辅助软件(真实有挂)-哔哩哔哩;1、下载好红龙poker辅助...
有挂透视!智星德州辅助译码插件... 有挂透视!智星德州辅助译码插件靠谱吗!确实一直总是有辅助工具(有挂方法)-哔哩哔哩1、下载好智星德州...
推荐透视!sohoo开挂辅助!... 推荐透视!sohoo开挂辅助!真是真的是有辅助神器(有挂功能)-哔哩哔哩1、下载好sohoo开挂辅助...