0
我在DialpadFragment中創建了它,但是當MO調用正在創建時,InCallScreen將始終覆蓋我的按鈕。這裏是我的代碼:我想創建一個位於動態頂部的按鈕
private void createStopButton() {
if (mstopButton == null) {
mstopButton = new Button(mActivity);
mstopButton.setText("Stop Dial");
}
WindowManager.LayoutParams params = new WindowManager.LayoutParams(
WindowManager.LayoutParams.MATCH_PARENT,
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY|
WindowManager.LayoutParams.TYPE_SYSTEM_ALERT,
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE|
WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE,
PixelFormat.OPAQUE);
params.gravity = Gravity.CENTER | Gravity.TOP;
final WindowManager wm = (WindowManager)mActivity.getSystemService(Context.WINDOW_SERVICE);
mstopButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
mIsRedialStatus = false;
wm.removeView(mstopButton);
}
});
wm.addView(mstopButton, params);
}
任何人都可以幫助解決如何使我的按鈕在屏幕的頂部。我在互聯網上調查了很多代碼,我發現他們將頂層相關代碼放在一個服務中。 我是否也應該使用服務來實現它?非常感謝!