Xem mẫu

Ver 1.0 – 2016, FIT - HCMUP

Lab 06: GridView abd Other Control

1 GridView
GridView là một viewgroup, nó hiển thị các phần tử con trên một lưới cuộn 2 chiều.

Ths. Lương Trần Hy Hiến, KHOA CNTT – TRƯỜNG ĐH SƯ PHẠM TP. HCM

1

Ver 1.0 – 2016, FIT - HCMUP

1.1

Lab 06: GridView abd Other Control

GridItem
Một GridView được tạo từ một danh sách các GridItem. GridItem là một ô (cell) riêng lẻ
trong gridview nơi mà dữ liệu sẽ được hiển thị. Bất kỳ dữ liệu nào trong GridView chỉ được
hiển thị thông qua GridItem.
Một GridItem là một mảnh giao diện, nó có thể được làm bởi một số View.

1.2

Ví dụ GridView với ArrayAdapter

1.2.1 Tạo giao diện
Tạo mới một Android project có tên SimpleGridView.
Thiết kế giao diện và thay đổi các thuộc tính GridView




columnWidth: 120
gravity
o center:
numColumns: auto_fit

Ths. Lương Trần Hy Hiến, KHOA CNTT – TRƯỜNG ĐH SƯ PHẠM TP. HCM

2

Ver 1.0 – 2016, FIT - HCMUP

Lab 06: GridView abd Other Control

1.2.2 Thiết kế lớp Website tương ứng một item
public class Website {
private String name;
private String url;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
@Override
public String toString() {
return name;
}
public Website(String name, String url) {
this.name = name;
this.url = url;
}
}

1.2.3 Gắn hàm xử lý trong ActivityMain
final GridView gridView = (GridView)findViewById(R.id.gridView);
ArrayList websitelist = new ArrayList();
websitelist.add(new Website("Google", "http://google.com.vn"));
websitelist.add(new Website("FIT, HCMUE", "http://fit.hcmup.edu.vn"));
websitelist.add(new Website("HCMUE", "http://hcmup.edu.vn"));
websitelist.add(new Website("HIENLTH", "http://fit.hcmup.edu.vn/~hienlth"));
websitelist.add(new Website("Tuổi trẻ", "http://tuoitre.vn"));
websitelist.add(new Website("Zing News", "http://zing.vn"));
ArrayAdapter arrayAdapter = new ArrayAdapter(this,
android.R.layout.simple_list_item_1 , websitelist);
gridView.setAdapter(arrayAdapter);
Ths. Lương Trần Hy Hiến, KHOA CNTT – TRƯỜNG ĐH SƯ PHẠM TP. HCM

3

Ver 1.0 – 2016, FIT - HCMUP

Lab 06: GridView abd Other Control

gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView parent, View view, int position, long id) {
Website website = (Website) gridView.getItemAtPosition(position);
Toast.makeText(MainActivity.this, "Vừa chọn :" + " " + website.getName() + "\n(" +
website.getUrl() + ")",Toast.LENGTH_LONG).show();
}
});

1.2.4 Kết quả chạy chương trình:

1.3

Tạo GridView với Layout tùy chỉnh

1.3.1 Tạo mới Layout cho GridView Item:

Ths. Lương Trần Hy Hiến, KHOA CNTT – TRƯỜNG ĐH SƯ PHẠM TP. HCM

4

Ver 1.0 – 2016, FIT - HCMUP

Lab 06: GridView abd Other Control

Tên file giao diện: my_item.xml

Phần code xml:









Ths. Lương Trần Hy Hiến, KHOA CNTT – TRƯỜNG ĐH SƯ PHẠM TP. HCM

5

nguon tai.lieu . vn