美文网首页
Android 用TextView实现一个日志显示

Android 用TextView实现一个日志显示

作者: 饮水思源为名 | 来源:发表于2019-05-16 10:30 被阅读0次

    笔者在做一个Demo,突发奇想希望能够直观的在Demo上打印日志信息,使得非开发人员也能简单的过滤这些信息。直接写了个TextView然后将日志往上添加。就需要解决两个问题:
    1.TextView在超过最大行数时时不会自动滚动的需要添加滚动条:
    tv_debug.movementMethod = ScrollingMovementMethod.getInstance()
    2.引入滚动条后,当超过最大行数,再添加内容,可以滚动,但是我们是希望他自动滚动到最新行的,这个功能需要自己实现:

    fun refreshLogView(msg:String){
           runOnUiThread {
               tv_debug.append(msg)
               var offset=tv_debug.lineCount*tv_debug.lineHeight
               if(offset>tv_debug.height){
                   tv_debug.scrollTo(0,offset-tv_debug.height+tv_debug.lineHeight*2)
               }
           }
       }
    

    runOnUiThread{}是因为笔者在融云的接受消息中引入了改方法,导致在其他线程调用,会Excepution。

    最后效果:

    TextView.jpg

    End

    笔者的Github Blog,希望各位大大提意见,点个star,谢谢
    传送门:WusyBlog

    求互粉互赞,互赞所有文章可以私聊我。哈哈,希望我们的原创文章能让更多朋友看到,一起变强。

    笔者新开通了微信公众号——饮水思源|wusy 计划持续运营,每日为您分享Android干货、原创文章。微信扫描下方的二维码关注我,开发学习路上不迷路。谢谢各位


    饮水思源|wusy.jpg

    相关文章

      网友评论

          本文标题:Android 用TextView实现一个日志显示

          本文链接:https://www.haomeiwen.com/subject/idebaqtx.html