vì vậy tôi đang cố gắng để có được mục trình đơn của tôi, được hiển thị trên thanh hành động để hoạt động giống như một tùy chọn trình đơn có thể kiểm tra. Phần linh hoạt hoạt động, có nghĩa là nó có thể kiểm tra được và khi tôi nhấn nó, và thiết lập trong mã setChecked (true) nó hoạt động. Nhưng những gì không hoạt động là phần trực quan. Không có thay đổi về cách một mục trình đơn trông như thế nào trên thanh hành động trong các trạng thái được chọn và bỏ chọn? Tôi đã thử sử dụng invalidateOptionsMenu() nhưng điều đó không thực hiện công việc, và không chỉ vậy, với dòng đó trong mã của tôi, tôi không thể thoát khỏi trạng thái đã chọn?!? Điều gì xảy ra là các tùy chọn invalidMenu() không hợp lệ để bỏ đặt trạng thái đã chọn và tôi kết thúc 'vòng lặp' hoặc trên mỗi lần nhấn của mục trình đơn đó mà tôi tiếp tục đi đến phần không kiểm tra của mã mà nó được kiểm tra và không hợp lệ. kiểm soát tôi đoán ...mục menu có thể kiểm tra trên thanh tác vụ Android không hoạt động/hiển thị đúng cách?
đây là mã từ file XML của tôi cho menu:
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/lenslist_menu_add"
android:showAsAction="always"
android:title="@string/add"/>
<item android:id="@+id/lenslist_menu_delete"
android:showAsAction="always"
android:checkable="true"
android:title="@string/delete"/>
</menu>
Và đây là đoạn code java:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
switch (item.getItemId()) {
case R.id.lenslist_menu_add:
return true;
case R.id.lenslist_menu_delete:
if (item.isChecked() == true) {
item.setChecked(false);
deleteMode = false;
lensAdapter.setDeleteMode(false);
} else {
item.setChecked(true);
deleteMode = true;
lensAdapter.setDeleteMode(true);
}
lensAdapter.notifyDataSetChanged();
return true;
}
return super.onOptionsItemSelected(item);
}
Cảm ơn!
đâu câu rằng từ đâu? –
Bạn có thể tìm thấy dưới dạng nhận xét trong Api Demo: ApiDemos \ res \ menu \ checkable.xml, tôi không thể tìm thấy nó trong tài liệu dành cho nhà phát triển – Entreco