Tôi đã thử tất cả các phương pháp ở trên, nhưng vẫn không hoạt động. Và sau đó, tôi đã thử phương thức dưới đây:
private class ActionModeCallback implements ActionMode.Callback {
@Override
public boolean onCreateActionMode(ActionMode actionMode, Menu menu) {
actionMode.getMenuInflater().inflate(R.menu.note_find_action, menu);
return true;
}
@Override
public boolean onPrepareActionMode(ActionMode actionMode, Menu menu) {
((AppCompatActivity) getActivity()).getSupportActionBar().hide();
return false;
}
@Override
public boolean onActionItemClicked(ActionMode actionMode, MenuItem menuItem) {
return false;
}
@Override
public void onDestroyActionMode(ActionMode actionMode) {
((AppCompatActivity) getActivity()).getSupportActionBar().show();
}
}
Ở đây, tôi đã sử dụng chế độ hành động và phương thức startSupportActionMode của thư viện hỗ trợ. Đồng thời tôi cũng đã cố gắng sửa đổi chủ đề của hoạt động đã cho. Chắc chắn, nó không hoạt động. Vì vậy, nếu bạn thực sự không có sự lựa chọn tốt hơn, bạn có thể thử cái này.
Mới đây, tôi thấy rằng tôi đã sử dụng khung Đầy màu sắc để bật nhiều chủ đề của ứng dụng, điều này sẽ thay đổi chủ đề trong mã. Khi tôi cố gắng sửa đổi phong cách trong khuôn khổ này, nó hoạt động.
Hy vọng nó hoạt động.
Nguồn
2018-01-03 11:46:35
Tôi nghĩ ActionMode là một phần của ActionBar và bạn không thể thay đổi vị trí của nó – SpyZip
Điều đó quá tệ. Cảm ơn câu trả lời –
Bạn đã đặt thanh công cụ làm thanh tác vụ chưa? –