2013-10-12 23 views
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之前,所以我有點不知情。 在此先感謝。

回答

1

如果你打算甜簡單起見,我建議:

  • 使每個注意到一個單獨的文件。
  • 使文件名稱爲註釋的標題(一定要清除它,以便人們不會在「操作」路徑中放置「..」之類的內容)。

這將是非常容易實施和處理。如果你需要做更多奇特的事情(比如記錄歷史),那麼你需要重新審視這個結構。但根據你的要求,我會去上面。

+0

首先謝謝。我仍然不知道如何在沒有對其進行硬編碼的情況下製作列表。那麼你會怎麼做呢? – mind

+0

它不能被硬編碼,因爲標題顯然是用戶可變的。 – mind

+0

聽起來像你想要的:'File [] files = new File(「/ path/to/your/notes /」)。listFiles();'這會給你一個你可以使用的File對象數組。 –

相關問題