KwaiAppTeam / AkDanmaku

一款利用游戏引擎理念打造的原生弹幕库
Other
468 stars 36 forks source link

不支持弹幕是spannable吗?那自定义表情加不进去呃 #22

Open ilovexy2tom opened 2 years ago

ilovexy2tom commented 2 years ago

希望能支持CharSequence

ilovexy2tom commented 2 years ago

自定义了 EmojiSimpleRenderer

  val ksDanmuku = findViewById<DanmakuView>(R.id.ks_danmaku_view)
        danmakuPlayer = DanmakuPlayer(
            renderer = TypedDanmakuRenderer(
                EmojiSimpleRenderer(),
                DanmakuItemData.DANMAKU_STYLE_ICON_UP to UpLogoRenderer(
                    ResourcesCompat.getDrawable(resources, R.mipmap.icon_danmaku_input_text_up_icon, context.theme)!!
                )
            )
        ).apply {
            bindView(ksDanmuku)
        }
EmojiSimpleRenderer 里面的draw方法,但是不起作用

 override fun draw(
        item: DanmakuItem,
        canvas: Canvas,
        displayer: DanmakuDisplayer,
        config: DanmakuConfig
    ) {
        updatePaint(item, displayer, config)
        val danmakuItemData = item.data
        val x = CANVAS_PADDING * 0.5f
        val y = CANVAS_PADDING * 0.5f - textPaint.ascent()
        val content = danmakuItemData.content
        val span = CustomEaseSmileUtils.getSmiledText(App.instance!!.applicationContext, content)
        canvas.drawText(span,0,span.length, x, y, strokePaint)
        canvas.drawText(span, 0, span.length, x, y, textPaint)
        if (danmakuItemData.danmakuStyle == DanmakuItemData.DANMAKU_STYLE_SELF_SEND) {
            canvas.drawRect(0f, 0f, canvas.width.toFloat(), canvas.height.toFloat(), borderPaint)
        }
    }
baiwangyan commented 1 year ago

请问这个问题你解决了嘛?,我目前也有这个问题

ilovexy2tom commented 1 year ago

请问这个问题你解决了嘛?,我目前也有这个问题

没有解决,最后没用使用这个了

ilovexy2tom commented 1 year ago

请问这个问题你解决了嘛?,我目前也有这个问题

但是我觉得应该是可以解决的

loseryc commented 1 year ago

请问这个问题你解决了嘛?,我目前也有这个问题

但是我觉得应该是可以解决的

@ilovexy2tom StaticLayout 使用这个去绘制CharSequence

ilovexy2tom commented 1 year ago

请问这个问题你解决了嘛?,我目前也有这个问题

但是我觉得应该是可以解决的

@ilovexy2tom StaticLayout 使用这个去绘制CharSequence

意思是说用staticLayout绘制canvas?

有没有更具体的?

loseryc commented 1 year ago

请问这个问题你解决了嘛?,我目前也有这个问题

但是我觉得应该是可以解决的

@ilovexy2tom StaticLayout 使用这个去绘制CharSequence

意思是说用staticLayout绘制canvas?

有没有更具体的? @ilovexy2tom

image
ilovexy2tom commented 1 year ago

请问这个问题你解决了嘛?,我目前也有这个问题

但是我觉得应该是可以解决的

@ilovexy2tom StaticLayout 使用这个去绘制CharSequence

意思是说用staticLayout绘制canvas? 有没有更具体的? @ilovexy2tom

image

感谢,回头我试一试