在安卓输入法中保存键盘状态



我正在写一个InputMethodService,基本上只是一个软键盘,我从中开始另一项活动:

class Foo extends InputMethodService {
    // ...
    private void startNewActivity() {
        Intent i = new Intent(this, NewActivity.class);
        i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        startActivity(i);
    }
    // ...
}

但是当我这样做时,用户将在打字的过程中。例如,用户按 'a' 键启动新活动。有没有办法,当用户完成新活动时,我可以让他们恢复打字并将键盘放回原样?

您正在键入的应用程序负责存储您在onPause()和相关方法期间键入的数据。 然后,应用程序应在 onResume() 中恢复其状态。 请注意,这些都不能由键盘控制。

您可以做的一件事(取决于您正在启动的活动的性质)是让活动成为一个对话框。 然后它将出现在当前活动上,当对话框关闭(按下后退按钮或您调用finish())时,一切都会恢复原样。

相关内容

  • 没有找到相关文章

最新更新