Tôi đang sử dụng ListView
để hiển thị màn hình chính của ứng dụng.
Màn hình chính về cơ bản là menu
để truy cập vào các phần ứng dụng khác nhau. Hiện tại, tôi có ListView
có nội dung được thêm theo chương trình trong phương thức onCreate
.Làm cách nào để tạo biểu tượng cho các mục menu trong ListView của Android?
Dưới đây là đoạn mã mà thực hiện điều này:
String[] mainItems = {
"Inbox", "Projects", "Contexts", "Next Actions"
}
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
setListAdapter(new ArrayAdapter<String>(
this, android.R.layout.simple_list_item_1, mainItems));
registerForContextMenu(getListView());
}
Vì vậy, menu cơ bản chỉ là một loạt các nút với các văn bản có trong mảng mainItems. Tôi biết rằng tôi có thể tạo bố cục XML (ví dụ: R.layout.mainMenu_item
) có một ImageView và TextView trong đó, nhưng tôi không chắc chắn cách đặt biểu tượng của ImageView. Tôi đã thấy rằng có một phương thức setImageResouce (int resId), nhưng cách để sử dụng phương thức này khi tạo ra với một ArrayAdapter đang cản trở tôi. Có cách nào tốt hơn để làm điều này?
Lưu ý rằng bạn thực sự cần xem xét convertView và chỉ tăng thêm các hàng mới nếu bạn thật sự cần chúng. Nếu convertView không phải là null, nó là một số hàng trước bạn tăng cao trước, lên để tái chế. Chỉ cần đặt lại biểu tượng và trả về hàng tái chế. Ít rác được tạo ra, thực hiện nhanh hơn. – CommonsWare