java - Android 来电时如何显示叠加

标签 java android overlay call

我想做这样的(红色区域)

enter image description here

现在我就这样做。 (BroadcastReceiver、PhoneStateListener 等...) 显示 toast 。 (忽略“为空”)

enter image description here

但我不知道如何在振铃时显示叠加并在空闲(或连接)时隐藏。 当我显示“Activity ”时,它会在通话结束时显示。

我怎样才能做到这一点?

代码是这样的

public class MyPhoneStateListener extends PhoneStateListener {
   Context context;
   Intent intent;

   public MyPhoneStateListener(Context context) {
       super();
       this.context = context;
   }

   @Override
   public void onCallStateChanged(int state, String incomingNumber) {
       switch (state) {
           case TelephonyManager.CALL_STATE_IDLE:
               // Hide popup
               break;
           case TelephonyManager.CALL_STATE_RINGING:
               // Show popup
               break;
           default:

               break;
       }
   }
  }

最佳答案

您需要一个自定义的Toast和一个BroadcastReceiver(正如您正确提到的)有一篇非常好的博客文章介绍了如何自定义Toast在这里: http://www.learn-android-easily.com/2013/05/customiozing-toast-in-android.html

关于java - Android 来电时如何显示叠加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29078317/

相关文章:

java - 如何在 jbutton 上设置悬停效果?

java - 共享剪贴板中的文本

iOS7 SpriteKit 如何实现文字密集的HUD 元素?

java - 单独的代码层来处理 C#/Java 中的事件

java - 在 GlassFish Server 上创建并运行应用程序客户端

android - ListView 膨胀问题

java - 如何从 PHP 服务器上的 android 获取值

ios - 移除 UIImagePickerController 底部的黑条

.net - 2 个视频的 FFMPEG 覆盖问题,第二个输入中缺少声音

java - 修改 ArrayList<HashMap<String, Integer>> 进行更好的实现