ポップアップ ウィンドウをアニメーション化するアプリケーションを作成しています。それは私のコードでうまく機能していました。
デバイスで戻るボタンが押されたときに、ポップアップウィンドウを閉じたい(つまり、スライドダウンしたい)。
しかし、デバイスからのキーを聞くことができませんでした。そのポップアップウィンドウを使用setOnKeyListener
しましたが、ログも取得しませんでした。
私のコードは以下のとおりです。
popup_layout = layoutInflater.inflate(R.layout.popup_addchannel, null);
popupWindow = new PopupWindow(popup_layout, LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT);
subscribeButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// Log.d(TAG,
// "Button is clicked for animation.... Visibility is"
// + subscribeButton.getVisibility());
openMenu(view);
}
});
popup_layout.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
Log.d(TAG, "on key button click called.........");
return false;
}
});
public void openMenu(View view) {
if (!flag) {
popupWindow.setAnimationStyle(R.style.PopupWindowAnimation);
popupWindow.showAtLocation(view.findViewById(R.id.button1),
Gravity.CENTER, 0, 0);
popupWindow.setFocusable(true);
popupWindow.update();
flag = true;
} else {
popupWindow.dismiss();
popupWindow.setFocusable(false);
flag = false;
}
}
この背後にある問題は何ですか?
要件を達成できますか?
どうか、私を導いてください。
前もって感謝します!