1
我在我的应用程序中使用了一个SQLiteDatabase,这是我手动创建的,然后在android应用程序中使用它。为了浏览它,我使用了一个Cursor。我在编辑文本中显示来自行的结果。防止由于方向变化导致的android状态变化
当方向改变时,不管显示的行如何,第一行显示在编辑文本中。我知道android重新创建方向更改的活动并再次调用onCreate()方法。
但是根据documentation,我不应该在onRetainNonConfigurationInstance()中存储游标对象,因为它使用上下文。
这里是创建光标的代码。
DataBaseHelper myDbHelper = new DataBaseHelper(this);
Cursor c=myDbHelper.getDatabase().rawQuery("SELECT * FROM mytable",null);
另一个推荐的方法是手工处理的变化,但我不想这样做,因为我想在UI的默认调整的优势。
如何在方向更改时继续使用同一行?
我已经试过这一点。应用程序仍然从方向更改开始重新开始。而且在文档中,这种方法被要求用作最后的手段。 – krammer
在这种情况下,您不需要实现onRetainNonConfigurationInstance()。 –
谢谢。我试过除屏幕以外的所有东西。 – krammer