1

手動で作成したアプリケーションで SQLiteDatabase を使用し、それを Android アプリケーションで使用します。それをナビゲートするために、カーソルを使用しています。編集テキストの行の結果を表示しています。

方向が変わると、表示されていた行に関係なく、最初の行が編集テキストに表示されます。私は、アンドロイドが向きの変更時にアクティビティを再作成し、 onCreate() メソッドを再度呼び出すことを知っています。

しかし、ドキュメントによると、コンテキストを使用するため、 onRetainNonConfigurationInstance() に Cursor オブジェクトを格納しないでください。

Cursor を作成するためのコードを次に示します。

DataBaseHelper myDbHelper = new DataBaseHelper(this);
Cursor c=myDbHelper.getDatabase().rawQuery("SELECT * FROM mytable",null);

別の推奨される方法は、変更を手動で処理することですが、UI のデフォルトの調整を利用したいので、私はそうしたくありません。

方向が変わったときに同じ行を続けるにはどうすればよいですか?

4

1 に答える 1

1

最も簡単な方法の 1 つは、これをマニフェスト ファイルに追加することです (関連するアクティビティ用) -

android:configChanges="orientation|screenSize|keyboardHidden"
于 2012-10-22T06:09:18.240 に答える