1

メモアプリを作ろうとしています。私の問題は、メインページのリストにテキスト ファイル (.txt) を表示することです。リストには、メモのタイトルと内容が表示されます。しかし、カスタム アダプターのコーディング方法がわかりません。

ファイルは次のように保存されます。

final EditText title = (EditText) findViewById(R.id.title);
final EditText note = (EditText) findViewById(R.id.note);

String head = title.getText().toString();
String body = note.getText().toString();
String fullnote = body + "\n" + head;

try {
FileOutputStream fo = openFileOutput(head + ".txt", Context.MODE_APPEND);
fo.write(fullnote.getBytes());
fo.write("\n".getBytes());
fo.write("\n".getBytes());
}
catch (FileNotFoundException e) {
// TODO Auto-generated catch block
    e.printStackTrace();
}
catch (IOException e) {
    // TODO Auto-generated catch block
e.printStackTrace();
}

これらのファイルをリストビューにロードしたい:

String[] listItems = {"Item 1", "Item 2", "etc.",};
ListView lv = (ListView) findViewById(R.id.mainpage_list);
lv.setAdapter(new ArrayAdapter<String>
(this, android.R.layout.simple_list_item_1, listItems));

「アイテム1」「アイテム2」「その他」単なるプレースホルダーです。

ファイル名をアイテムにし、ファイルの内容をサブアイテムにしたいです。私はこれまで ListViews と Adapters を使用したことがないので、ちょっと無知です。前もって感謝します。

4

1 に答える 1

1

甘いシンプルさを求めるなら、次のことをお勧めします。

  • 各メモを個別のファイルにします。
  • ファイル名をノートのタイトルにします (パスを操作する ".." のようなものを人々がそこに入れないように、必ずこれをきれいにしてください)。

これは、実装と対処が非常に簡単です。もっと手の込んだことをする必要がある場合 (たとえば、履歴を追跡するなど)、構造を再検討する必要があります。しかし、あなたの要件に基づいて、私は上記に行きます。

于 2013-10-12T19:22:27.607 に答える