android - 如何在android中的Button前面带上Badge Count?

标签 android

我试图在按钮的右上角显示通知数量,我正在使用 ViewBadger(外部库:android-viewbadger http://jgilfelt.github.io/android-viewbadger)。我现在面临的问题是徽章像这样显示在按钮的后面

here is the snapshot

但我想像 facebook 或任何其他应用程序一样在前面显示徽章

这是我的代码

package com.daimkhan.badgerview;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;

import com.readystatesoftware.viewbadger.BadgeView;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    View button = findViewById(R.id.button);
    final BadgeView badge = new BadgeView(this, button);
    badge.setText("8");
    badge.setTextSize(12);
    badge.setBadgePosition(BadgeView.POSITION_TOP_RIGHT);

    badge.setBadgeMargin(0, 0);

    badge.show();

    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            badge.hide();
        }
    });

  }
}

请帮助我,提前致谢:)

最佳答案

在展示徽章之前尝试这个

ViewCompat.setTranslationZ(badge, 10);

这会改变 View 相对于 Z 轴的高度。

官方文档说

setTranslationZ
void setTranslationZ (View view, float translationZ)
Sets the depth location of this view relative to its elevation.

关于android - 如何在android中的Button前面带上Badge Count?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36184217/

相关文章:

java - 将 AsyncTask 放在哪里,使其只启动一次

android - SQLite 为什么我们在 Assets 文件夹中复制数据库

android - 在android中的谷歌地图上绘制多个标记

java - 为什么会出现此异常 'o.StreamCorruptedException: invalid stream header: D8322EDA'

java - setRetainInstance() 方法是否保留 ArrayAdapter 数据?

android - 从 Activity 更改类变量值

android - 我还能提高 GPS 精度吗?

java - 静态初始化程序似乎在 junit 测试期间不运行

Android [ENTER]-对话框中多行编辑文本的按键操作

java - 重复图层列表中的颜色背景