0
ダイアログと着信画面の両方をクリック可能にします。私はこのサイトからさまざまなソリューションを試しましたが、いくつかの条件で動作するものとそうでないものがあります。私は真の呼び出し元のようなアプリケーションを作成したい、私はBroadcastReceiver
からアクティビティを呼び出しました。受信した画面がフルスクリーンではないため、画面がロックされていないと、私のコードは完全に機能します。しかし、画面がフルスクリーンの場合、ダイアログの活動は呼び出し画面上に数ミリ秒間表示され、呼び出し画面の後ろに移動します。また、私はこれを試してみました。ここダイアログロック着信画面
私はBroadcastReceiver
からpublic class IncomingCallActivity extends AppCompatActivity {
private static final int MSG_ID_CHECK_TOP_ACTIVITY = 1;
private String userName;
private String TAG = IncomingCallActivity.class.getSimpleName();
private Window wind;
private PowerManager powerManager;
private PowerManager.WakeLock wakeLock;
/*private ActivityManager mActivityManager;
private boolean mDismissed = false;*/
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
wind = this.getWindow();
wind.requestFeature(Window.FEATURE_NO_TITLE);
wind.addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
wind.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
wind.addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
wind.addFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL);
powerManager = (PowerManager)getSystemService(Context.POWER_SERVICE);
wakeLock = powerManager.newWakeLock(PowerManager.FULL_WAKE_LOCK, "My Lock");
wakeLock.acquire();
setContentView(R.layout.activity_incoming_call);
userName = getIntent().getStringExtra(IncomingCallReceiver.NAME_KEY);
final TextView textView = (TextView) findViewById(R.id.tvUsername);
textView.setText(userName);
final ImageView ivCancel = (ImageView) findViewById(R.id.ivCancel);
ivCancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
wakeLock.release();
IncomingCallActivity.this.finish();
}
});
}
}
と呼ばれる私の活動の私のコードですが、それは私が両方の画面がクリッカブルたい着信画面がunclickableようになります。 –
この問題に直面しない同じウィンドウパラメータを追加します。着信call.andの表示をポップアップするために同じコードを使用しています。ダイアログビューをLayoutInflaterとして追加しようとします。inflater =(LayoutInflater) myContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); mDialogView = inflater.inflate(R.layout.small_pop_up_layout、 null); –
それは与えられたParamsとうまくいった。巨大な(素晴らしい)Gautamに感謝します。私は長い間苦労していた。 –