Tạo bố cục XML đầu tiên trong res/layout/main.xml
thư mục dự án của bạn :
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<Button
android:id="@+id/addBtn"
android:text="Add New Item"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:onClick="addItems"/>
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:drawSelectorOnTop="false"
/>
</LinearLayout>
Đây là một bố cục đơn giản với một nút ở trên cùng và chế độ xem danh sách ở phía dưới. Lưu ý rằng ListView
id @android:id/list
có định nghĩa mặc định ListView
a ListActivity
có thể sử dụng.
public class ListViewDemo extends ListActivity {
//LIST OF ARRAY STRINGS WHICH WILL SERVE AS LIST ITEMS
ArrayList<String> listItems=new ArrayList<String>();
//DEFINING A STRING ADAPTER WHICH WILL HANDLE THE DATA OF THE LISTVIEW
ArrayAdapter<String> adapter;
//RECORDING HOW MANY TIMES THE BUTTON HAS BEEN CLICKED
int clickCounter=0;
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
adapter=new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1,
listItems);
setListAdapter(adapter);
}
//METHOD WHICH WILL HANDLE DYNAMIC INSERTION
public void addItems(View v) {
listItems.add("Clicked : "+clickCounter++);
adapter.notifyDataSetChanged();
}
}
android.R.layout.simple_list_item_1
là bố cục mục danh sách mặc định do Android cung cấp và bạn có thể sử dụng bố cục kho này cho những thứ không phức tạp.
listItems
là một Danh sách chứa dữ liệu được hiển thị trong ListView. Tất cả các chèn và loại bỏ nên được thực hiện trên listItems
; những thay đổi trong listItems
nên được phản ánh trong quan điểm. Điều đó được xử lý bởi ArrayAdapter<String> adapter
, cần được thông báo bằng cách sử dụng:
adapter.notifyDataSetChanged();
Một bộ chuyển đổi được khởi tạo với 3 tham số: bối cảnh, có thể là của bạn activity/listactivity
; cách bố trí mục danh sách cá nhân của bạn; và cuối cùng, danh sách, đó là dữ liệu thực tế sẽ được hiển thị trong danh sách.