イベントのみにフォーカスを当てたビューのみを処理できます。
私のCustomPopUpの使用を試みることができます。
ここでの動作:EditTextをクリックすると、何かを入力してからCustomPopUpを開き、入力を続けると、EditTextに入力されます。したがって、あなたがCustomPopUpを開くときでも、以前のビューに焦点が当てられます。
public class CustomPopUp extends PopupWindow
{
private final View.OnTouchListener customPopUpTouchListenr = new View.OnTouchListener()
{
@Override
public boolean onTouch(final View v, final MotionEvent event)
{
return false;
}
};
public CustomPopUp(final View theView)
{
super(theView);
initView();
setTouchInterceptor(customPopUpTouchListenr);
}
private void initView()
{
setWidth(LayoutParams.WRAP_CONTENT);
setHeight(LayoutParams.WRAP_CONTENT);
setTouchable(true);
setOutsideTouchable(true);
setBackgroundDrawable(new ColorDrawable());
}
}
この場合、EditTextビューはウィンドウ自体の内部にあります。だから私はキーボードを表示するためにウィンドウを内側に集中させなければならない。 – user634545
解決済みとしてマークしてください –
私の言ったように、私の問題は解決しませんでした。ポップアップでは、ポップアップウィンドウ内のedittextが機能するためにフォーカスが必要です。私はAndroidソースからPopupWindowを取り出し、ディスパッチキーメソッドを変更することでこの問題を解決しました。 – user634545