相关疑难解决方法(0)

徽章可绘制未显示

为什么BadgeDrawable没有显示在任何地方?我想补充的MaterialCardViewMaterialButton等它不显示。任何人都知道如何解决这个问题?或者有相同的库来替换它?

这是代码:

val badgeDrawable = BadgeDrawable.create(holder.itemView.context)
badgeDrawable.number = 10
badgeDrawable.badgeGravity = BadgeDrawable.TOP_END
badgeDrawable.backgroundColor = holder.itemView.context.getColor(R.color.colorAccent)
holder.itemView.home_cardview.overlay.add(badgeDrawable)
badgeDrawable.updateBadgeCoordinates(holder.itemView.home_cardview, null)
Run Code Online (Sandbox Code Playgroud)

这种方法也不起作用:

BadgeUtils.attachBadgeDrawable(badgeDrawable, anchor, null);
Run Code Online (Sandbox Code Playgroud)

顺便说一下,在新版本中 compatBadgeParent 是必填字段

android android-button kotlin

8
推荐指数
2
解决办法
3860
查看次数

Android如何为按钮添加徽章

我想在我的按钮中添加一个徽章,我该怎么做?

在此处输入图片说明

按钮 :

                    <Button
                    android:id="@+id/button"
                    android:layout_width="0dp"
                    android:layout_weight="1"
                    android:background="@drawable/badge_circle"
                    android:gravity="center"
                    android:padding="12dip"
                    android:text="Button"
                    android:textColor="#ffffff"/>
Run Code Online (Sandbox Code Playgroud)

android android-layout

5
推荐指数
2
解决办法
1万
查看次数

BadgeDrawable 不会出现在 BottomNavigationView 以外的元素上

我无法让BadgeDrawable正常工作。

使用它没有问题BottomNavigationView

navView.setupWithNavController(navController)
val badge = navView.getOrCreateBadge(R.id.navigation_home)
badge.number = 12
Run Code Online (Sandbox Code Playgroud)

但当我想在其他元素上使用它时,它不会显示。像这样:

val badgeDrawable = BadgeDrawable.create(context!!)
badgeDrawable.number = 32
BadgeUtils.attachBadgeDrawable(badgeDrawable, textView, root.findViewById(R.id.frame_layout))
Run Code Online (Sandbox Code Playgroud)

我使用 FrameLayout 只是因为这个问题修复似乎尚未发布。

布局:

<FrameLayout
    android:id="@+id/frame_layout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginStart="8dp"
    android:layout_marginTop="8dp"
    android:layout_marginEnd="8dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent">

    <ImageView
        android:id="@+id/text_home"
        android:src="@drawable/ic_home_black_24dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textAlignment="center"
        android:textSize="20sp" />
</FrameLayout>
Run Code Online (Sandbox Code Playgroud)

我正在使用最新的库版本:'com.google.android.material:material:1.2.0-rc01'

我尝试过不同的方法。但运气不好。难道这其中有什么我所遗漏的秘密吗?

这是该项目的 git 存储库(尽可能简单):https ://github.com/marcinkunert/badgeissue

徽章可绘制未显示

android kotlin android-drawable android-studio material-components-android

0
推荐指数
1
解决办法
2427
查看次数