无法使用缩写 android kotlin 生成自定义图像

Posted

技术标签:

【中文标题】无法使用缩写 android kotlin 生成自定义图像【英文标题】:unable to generate custom image using initials android kotlin 【发布时间】:2022-01-18 10:45:54 【问题描述】:

我正在尝试创建一个图像视图,如果本地存储中已有图像,则显示该视图,否则会根据电子邮件的第一个字母创建默认图像。 这是代码->

val drawerEmailIdValue = "boy@gmail.com"
        val photoText = drawerEmailIdValue.substring(0,1).toUpperCase()

        val drawerPhoto = nav_view.getHeaderView(0).findViewById<ImageView>(R.id.drawerProfileImage)

        val f = File("/data/data/com.example.demoapp11/app_imageDirectory", "profileImage.jpg")

        if(f.exists())
            val b = BitmapFactory.decodeStream(FileInputStream(f))
            drawerPhoto.setImageBitmap(b)
        else
            val b = Bitmap.createBitmap(100, 100, Bitmap.Config.ARGB_8888)
            val c = Canvas(b)
            c.drawText(photoText, x.toFloat(), y.toFloat(), Paint())
            drawerPhoto.setImageBitmap(b)
        

但是当我打开抽屉菜单时我没有看到任何图像。有人可以帮我解决这个问题吗?

【问题讨论】:

【参考方案1】:

我没有这样做。使用此链接并改用此依赖项。它几乎可以完成工作https://github.com/amulyakhare/TextDrawable

将此用于 gradle ->implementation 'com.amulyakhare:com.amulyakhare.textdrawable:1.0.1'

最后是这个->

TextDrawable drawable2 = TextDrawable.builder()
                .buildRound(photoText, Color.RED);

drawerPhoto.setImageDrawable(drawable2);

【讨论】:

以上是关于无法使用缩写 android kotlin 生成自定义图像的主要内容,如果未能解决你的问题,请参考以下文章

无法生成签名的apk,kotlin

在 gradle android library kotlin 项目中禁用 META-INF/* 生成

从子包访问生成的 Apollo 类 - Kotlin

Kotlin 元编程之 KSP 实战:通过自定义注解配置Compose导航路由

Kotlin 元编程之 KSP 实战:通过自定义注解配置Compose导航路由

Kotlin 是不是 100% 兼容 Android 上的 ART?