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辅助工具(辅助挂)hhpoker辅助器视频(好像是真的有挂)是一款可以让一直...
一分钟揭秘!美猴王房卡辅助(辅... 一分钟揭秘!美猴王房卡辅助(辅助挂)哈糖大菠萝破解器(果然有挂);是一款可以让一直输的玩家,快速成为...
重大消息!聚财平台辅助(辅助挂... 【福星临门,好运相随】;重大消息!聚财平台辅助(辅助挂)wepoker透视有用吗(起初真的有挂);暗...
玩家必备攻略!科乐游戏辅助脚本... 玩家必备攻略!科乐游戏辅助脚本视频(辅助挂)竞技联盟破解版最新版(本来真的是有挂)是一款可以让一直输...
详细说明!乐达app辅助(辅助... 详细说明!乐达app辅助(辅助挂)aapoker免费透视脚本(往昔有挂);小薇(透视辅助)致您一封信...
记者发布!jj斗地主外开挂(辅... 记者发布!jj斗地主外开挂(辅助挂)德普之星透视辅助软件激活码(从前存在有挂);1、很好的jj斗地主...
一分钟了解!广东雀神祈福真的有... 一分钟了解!广东雀神祈福真的有用吗(辅助挂)wepoker好友房开挂(先前真的有挂);1、超多福利:...
重大来袭!吉安中至小程序(辅助... 重大来袭!吉安中至小程序(辅助挂)wepoker永久免费脚本(确实真的有挂);人气非常高,ai更新快...
我来向大家传授!微信小程序多功... 您好:微信小程序多功能辅助这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户...
大家学习交流!途游大作战辅助(... 您好:途游大作战辅助这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特...