我是靠谱客的博主 悲凉火车,最近开发中收集的这篇文章主要介绍android给view的overlay添加bitmap,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1、首先将xml布局(layout)转化为bitmap

fun getViewBitmap(layoutId: Int): Bitmap? {
        val view = layoutInflater.inflate(layoutId, null)
        val me = MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED)
        view.measure(me, me)
        view.layout(0, 0, view.measuredWidth, view.measuredHeight)
        view.buildDrawingCache()
        return view.drawingCache
    }

2、转为drawable后添加,需要注意,必须给drawable设置gravity,bounds跟密度,否则会影响显示效果,红色99就是添加的view,受这三个参数影响

val viewBitmap = getViewBitmap(R.layout.red_oo)
        val bitmapDrawable = BitmapDrawable(null, viewBitmap).apply {
            setGravity(Gravity.END)
            setBounds(0,0,200,100)
            viewBitmap?.run {
                setTargetDensity(viewBitmap.density)
            }
        }
        findViewById.overlay.add(bitmapDrawable)

 

最后

以上就是悲凉火车为你收集整理的android给view的overlay添加bitmap的全部内容,希望文章能够帮你解决android给view的overlay添加bitmap所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(85)

评论列表共有 0 条评论

立即
投稿
返回
顶部