2012-06-14 60 views
5

Tôi đang sử dụng Actionbar Sherlock. Hoạt động được hiển thị khi khởi động sẽ bắt đầu trong "chế độ tìm kiếm" để bắt đầu tìm kiếm ngay lập tức. Để làm như vậy, tôi sử dụng mã sau:Tiện ích mở rộng tìm kiếm của thanh tác vụ Sherlock Search không hoạt động

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    super.onCreateOptionsMenu(menu); 

    //collapse search 
    MenuItem searchItem = menu.add(Menu.NONE, R.string.inlineSearch, Menu.NONE, getString(R.string.inlineSearch)).setIcon(R.drawable.menu_search); 
    searchItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS); 
    searchView = new SearchView(this); 
    searchItem.setActionView(new SearchView(this)); 
    searchItem.expandActionView(); 
    return true; 
} 

Chế độ xem tìm kiếm là Chế độ xem được cung cấp bởi Android/Actionbar Sherlock.

Sự cố mà tôi đang gặp phải là bất kể tôi làm gì, mục này sẽ không bao giờ được mở rộng khi khởi động. Tôi đã thử gọi phương thức expandActionView sau khi khởi động bằng cách sử dụng một mục trên thanh tác vụ khác, không có gì thay đổi. Tôi đã triển khai Chế độ xem thực thi CollapsibleActionView của riêng mình, nhưng các phương thức onActionViewExpanded() và onActionViewCollapsed() không bao giờ được gọi.

Nhưng nếu tôi nhấp vào nút thu gọn của SearchView, chế độ xem sẽ mở rộng như mong đợi.

Có ai biết tôi đang làm gì sai không? Cảm ơn bạn đã giúp đỡ!

Trả lời

14

Sau khi xem qua tài liệu nguồn, cuối cùng tôi đã tự tìm được câu trả lời. menuItem.expandActionView() chỉ có hiệu lực nếu MenuItem đã đặt cờ sau: searchItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);

Hy vọng rằng sẽ giúp ai đó ở ngoài đó!

+0

u có thể mở rộng hộp tìm kiếm thành toàn bộ chiều rộng của thanh tác vụ không? –

+1

Bạn có trong câu trả lời này vẫn đang sử dụng chế độ xem tìm kiếm của Thanh tác vụ Sherlock hoặc chế độ xem tùy chỉnh của riêng bạn mà bạn đã đề cập ở trên? – pjv

+0

Sự khác biệt duy nhất là thay đổi của setShowAsAction, chế độ xem vẫn là chế độ xem tìm kiếm được cung cấp bởi thanh tác vụ – user1033552

Các vấn đề liên quan