我在我的應用程序中創建了新的ListView
,我有我的ListView
,並在ActionBar
中有一個按鈕「添加新的」。該按鈕的功能是在ListView
中創建一個新項目。添加到安卓ListView新項目
我的問題是:如何在按下按鈕時在我的ListView
中製作新的String
?
我在我的應用程序中創建了新的ListView
,我有我的ListView
,並在ActionBar
中有一個按鈕「添加新的」。該按鈕的功能是在ListView
中創建一個新項目。添加到安卓ListView新項目
我的問題是:如何在按下按鈕時在我的ListView
中製作新的String
?
如果你的意思是:加入新的項目列出與按一下按鈕, 它肯定是有界的,以你用什麼樣的模式是您的列表適配器。數據庫,文件或運行時列表<>(); 您的列表已連接到適配器; 「getViewAt」方法返回你列表視圖中的每一行。
如果您使用的ListView數據庫模型,你在你的按鈕,點擊活動運行插入腳本,數據庫刷新其數據,您的ListView適配器從數據庫中檢索數據和它的完成。
或者,如果你僅僅使用一個簡單的列表<>在適配器;你會做list.add在你的點擊&適配器完成剩下的事情。
樣品在vogella,使用地圖作爲數據建模:Listview sample
ListView
是顯示多個Views
由一個Adapter
管理的控件。具體來說,一個ListAdapter
。
您需要將一個適配器添加到您的列表視圖窗口小部件,並使用該適配器將新項目添加到列表視圖。
例如;您可以添加一個ArrayAdapter
並在用戶單擊ActionBar項目時調用add
方法。
Here is a tutorial on using ArrayAdapters。
以最基本的形式。您可以告訴ArrayAdapter使用現有的Layout和TextView。所以添加一個字符串應該很簡單。
基本上土特產品必須做一些這樣的:
your_btn.setOnClickListener(new View.OnClickListener
{
public void onClick(View v)
{
your_custom_adapter.Add('Foo');
your_custom_adapter.notifyDataSetChanged();
}
});
的方法實現添加在您的適配器是顯而易見的,它只是增加了一個新的String你的數據結構(即:一個ArrayList)。
好運
這是例子,如果你只需要簡單的字符串行。
ListView lv = (ListView) findViewById(R.id.mylist);
String[] values = new String[] { "Android", "Linux", "OSX",
"WebOS", "Windows7", "Ubuntu", "OS/2"
};
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,R.layout.rowlayout, R.id.restaurantname, values);
lv.setAdapter(adapter);
adapter.add("another row");
adapter.notifyDataSetChanged()
一個新行,你是什麼意思? –
檢查出[此鏈接](http://stackoverflow.com/a/10296747) – CRUSADER
是的,我的意思是一個新的行.. – AndroidFreak