如何在Android中接听来电时显示叠加

时间:2015-03-16 13:41:50

标签: java android overlay call

我想这样做(红色区域)

enter image description here

现在我这样做。 (BroadcastReceiver,PhoneStateListener等......) 显示吐司。 (忽略'为空')

enter image description here

但是我不知道如何在RINGING时显示叠加并在IDLE(或连接)时隐藏。 当我显示活动时,它显示呼叫结束时。

我该怎么做?

代码就像这样

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;
       }
   }
  }

1 个答案:

答案 0 :(得分:1)

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