如何捕捉;软键显示/隐藏“;Android中的事件?

如何捕捉;软键显示/隐藏“;Android中的事件?,android,android-activity,navigationbar,softkeys,Android,Android Activity,Navigationbar,Softkeys,在我的例子中,我在应用程序中隐藏软键,但有时在显示通知时显示和隐藏软键。在我使用的代码中 View decorView = getWindow().getDecorView(); int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATI

在我的例子中,我在应用程序中隐藏软键,但有时在显示通知时显示和隐藏软键。在我使用的代码中

    View decorView = getWindow().getDecorView();

    int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
            | View.SYSTEM_UI_FLAG_FULLSCREEN
            | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
            | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;

    decorView.setSystemUiVisibility(uiOptions);
当软键显示/隐藏事件时,是否有任何侦听器或回调可检测


谢谢…

尝试在编辑文本上使用OnFocusChangeListener()

myEditText.setOnFocusChangeListener(new OnFocusChangeListener() {

    @Override
    public void onFocusChange(View v, boolean hasFocus) {
        if(!hasFocus){
            InputMethodManager imm = 
(InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE);
    imm.hideSoftInputFromWindow(yourEditText.getWindowToken(), 0);
        }               
    }
});

尝试对编辑文本使用OnFocusChangeListener():

myEditText.setOnFocusChangeListener(new OnFocusChangeListener() {

    @Override
    public void onFocusChange(View v, boolean hasFocus) {
        if(!hasFocus){
            InputMethodManager imm = 
(InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE);
    imm.hideSoftInputFromWindow(yourEditText.getWindowToken(), 0);
        }               
    }
});
尝试添加

OnGlobalLayoutListener

赶场

contentView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
    @Override
    public void onGlobalLayout() {

      //try catching soft keys here
    }
    });
尝试添加

OnGlobalLayoutListener

赶场

contentView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
    @Override
    public void onGlobalLayout() {

      //try catching soft keys here
    }
    });

thanx。。但我说的是软键,只用于后退和菜单,不用于软键..哦。好啊你试过WindowFocusChanged吗??检查以下答案:[链接]()是。。我试试看。但它无法检测软键隐藏事件。thanx。。但我说的是软键,只用于后退和菜单,不用于软键..哦。好啊你试过WindowFocusChanged吗??检查以下答案:[链接]()是。。我试试看。但它无法检测软键隐藏事件。thanx。。但我说的是软键,只用于后退和菜单,不用于软键..thanx。。但我说的是软键,只用于后退和菜单,不用于软键。。