Tôi đang cố gắng để thiết lập các chỉ số của mặt hàng đó mà cần phải được lựa chọn trong spinner theo mặc định, nhưng nó luôn luôn mặc định là 0 (mục 1)ActionBar Dropdown Spinner mặc định mục đến mục đầu tiên
actionBar.setDisplayShowTitleEnabled(false);
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
SpinnerAdapter spinnerAdapter =
new ArrayAdapter<String>(activity, android.R.layout.simple_spinner_dropdown_item,
names);
int selectedIndex = actionBar.getSelectedNavigationIndex();
if (selectedIndex != targetIndex) {
actionBar.setSelectedNavigationItem(targetIndex);
}
Ở trên nếu khối được gọi là luôn luôn. Ngay cả sau khi thiết lập chỉ số 2, lần sau tôi kiểm tra nó trả về 0.
Chỉnh sửa: Tôi nghi ngờ getSelectedNavigationIndex cung cấp chỉ mục hành độngBar item thay vì mục Spinner thả xuống. Nếu trường hợp đó xảy ra, phương thức nào đặt chỉ mục của mục đã chọn trong trình đơn thả xuống?
Bạn đã thử thử phương pháp đó chưa? Ví dụ, tạo spinner với ba phần tử và kích hoạt phần tử thứ hai mà không sử dụng bất kỳ điều kiện nào. Việc này ổn với tôi. Hãy xem [ví dụ của tôi] (http://stackoverflow.com/questions/9039045/how-to-set-active-item-in-the-action-bar-drop-down-navigation/9046460#comment11641511_9046460). – Roman
Ngoài ra, hãy thử thiết lập bộ điều hợp của bạn trước khi nhận/thiết lập navigationIndex, tức là actionBar.setListNavigationCallbacks (adapter, this); – brk3