在Android输入法中保存键盘状态

时间:2012-04-07 22:51:02

标签: android android-input-method

我正在写一个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'键以启动新活动。有没有办法,当用户完成新活动时,我可以将它们返回键入并将键盘恢复原状?

1 个答案:

答案 0 :(得分:1)

您输入的应用程序用于存储您在onPause()及其相关方法中输入的数据。然后,应用应该在onResume()中恢复其状态。请注意,这些都不能通过键盘控制。

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