C# 如何检查设备上是否打开了软键盘

C# 如何检查设备上是否打开了软键盘,c#,android,xamarin.android,C#,Android,Xamarin.android,我必须检测软键盘是否已打开。我在这里读了一些关于如何做的文章,其中一个例子是>这试试这个: InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); if (imm.isAcceptingText()) { writeToLog("Software Keyboard was shown"); } else { write

我必须检测软键盘是否已打开。我在这里读了一些关于如何做的文章,其中一个例子是>这试试这个:

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);

    if (imm.isAcceptingText()) {
        writeToLog("Software Keyboard was shown");
    } else {
        writeToLog("Software Keyboard was not shown");
    }
试试这个:

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);

    if (imm.isAcceptingText()) {
        writeToLog("Software Keyboard was shown");
    } else {
        writeToLog("Software Keyboard was not shown");
    }

无法检测是否显示软键盘,但您可以通过知道活动视图已调整大小来间接知道显示软键板 这两行隐藏了软键盘

var input = (InputMethodManager)GetSystemService(InputMethodService);
input.HideSoftInputFromWindow(editText1.WindowToken, HideSoftInputFlags.None);
也可以看到


无法检测到是否显示了软键盘,但您可以通过知道活动视图已调整大小来间接知道显示了软键板 这两行隐藏了软键盘

var input = (InputMethodManager)GetSystemService(InputMethodService);
input.HideSoftInputFromWindow(editText1.WindowToken, HideSoftInputFlags.None);
也可以看到


出现一个错误,getActivity()未知。。。我需要进口一些特别的东西吗?所以。。。在哪里可以为我的活动的根视图设置id?根视图到底是什么?正如你所看到的,我对android不是很熟悉,现在我必须用android的mono来学习,有些时候学习起来更加困难。为了找出api的某个部分在monodroid中的名称不同,并最终以另一种方式工作…出现一个错误,getActivity()未知。。。我需要进口一些特别的东西吗?所以。。。在哪里可以为我的活动的根视图设置id?根视图到底是什么?正如你所看到的,我对android不是很熟悉,现在我必须用android的mono来学习,有些时候学习起来更加困难。为了弄清楚api的某个部分在monodroid中的名称不同,并最终以另一种方式工作……我不想隐藏键盘,我想知道键盘是否已打开,以便可以隐藏tabWidget,占用屏幕上很大的空间。我不想隐藏键盘,我想知道键盘是否打开了,这样我就可以隐藏一个tabWidget,从而在屏幕上占据很大的空间。