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)

相关内容

热门资讯

透视免费!wpk有透视辅助吗,... 透视免费!wpk有透视辅助吗,(wpK)竟然是真的有挂,黑科技存在(有挂秘诀)-哔哩哔哩;所有人都在...
第8分钟黑科技!德扑ai软件,... 第8分钟黑科技!德扑ai软件,(德扑之星)一直是有挂,教你攻略(果真有挂)-哔哩哔哩;1、不需要AI...
黑科技代打!(WePoKe)固... 黑科技代打!(WePoKe)固有真的是有挂,(wePOke)原来真的有挂,黑科技智能(有挂详细)-哔...
4分钟辅助挂!微扑克ai辅助神... 4分钟辅助挂!微扑克ai辅助神器,(微扑克)先前有挂,有挂(有挂透明挂)-哔哩哔哩小薇(透视辅助)致...
黑科技插件!(WePoKe)原... 黑科技插件!(WePoKe)原本存在有挂,(wepOke)原来有挂,黑科技存在(有挂技巧)-哔哩哔哩...
第6分钟黑科技!德扑ai智能机... 第6分钟黑科技!德扑ai智能机器人,(德扑)切实存在有挂,德州教程(有挂方式)-哔哩哔哩1、很好的工...
黑科技ai!(WePoKe)素... 黑科技ai!(WePoKe)素来真的有挂,(wepoke)原来真的有挂,黑科技猫腻(有人有挂)-哔哩...
透视辅助!wpk辅助器小程序,... 透视辅助!wpk辅助器小程序,(wPk)总是有挂,黑科技必胜(有挂教程)-哔哩哔哩;1、wpk辅助器...
两分钟黑科技!德扑之星系统发牌... 两分钟黑科技!德扑之星系统发牌机制,(德扑之星)起初真的是有挂,AI教程(有挂技术)-哔哩哔哩;1、...
1分钟黑科技!德扑之星有作弊器... 1分钟黑科技!德扑之星有作弊器吗,(德扑之星)其实有挂,曝光教程(有挂实锤)-哔哩哔哩1、金币登录送...