2012-06-02 40 views
6

Tôi có một đoạn mà tôi đang thay thế bằng một đoạn khác, đồng thời thêm giao dịch vào ngăn xếp lại. Cả hai mảnh của tôi đều cung cấp các mục menu cho thanh hành động bằng ActionBarSherlock. Tuy nhiên, tôi đang gặp một vấn đề - trong đoạn thứ hai của tôi, thanh hành động hiển thị cả hai phần của mảnh đầu tiên và mảnh thứ hai; Tôi chỉ muốn đồ vật thứ hai. Có bất kì cách nào để đạt được điều này không?Làm cách nào để xóa các mục menu của ngăn xếp ngăn xếp?

(Tôi cũng đang sử dụng các thư viện hỗ trợ.)

+1

bạn có tìm ra điều này không? – Hades

+1

bạn có tìm ra điều này không? –

Trả lời

3

Nếu bạn muốn cập nhật các biểu tượng thanh hành động, bạn có thể ghi đè lên onCreateOptionsMenu() trong hoạt động để xác định mà đơn được sử dụng cho các đoạn hoạt động. Sau đó gọi invalidateOptionsMenu() sau khi thay thế các mảnh để tạo lại menu.

Nếu bạn chỉ sử dụng trình đơn thả xuống, bạn có thể ghi đè lênPrepareOptionsMenu() và thêm/xóa các mục khỏi trình đơn.

+0

Làm cách nào để xác định menu nào sẽ sử dụng? Có một số phương pháp để chọn những đoạn 'onCreateOptionsMenu' để gọi? – jmgrosen

+0

bạn sẽ phải cung cấp logic đó. Nó sẽ phụ thuộc vào việc thực hiện của bạn. Bạn có thể kiểm tra phân đoạn nào có thể nhìn thấy hoặc theo dõi nó bằng một biến mẫu. – Jereld

+2

Tôi nghĩ bạn hiểu lầm. Tôi đang sử dụng 'onCreateOptionsMenu' _in_ các đoạn của tôi, và từ những gì tôi có thể nói, không có cách nào để chọn lọc và chọn các menu tùy chọn của các đoạn mà tôi muốn sử dụng. – jmgrosen

0

Có thể bạn đã có một ViewPager trong đoạn đầu tiên với getFragmentManager() được chuyển đến một hàm tạo FragmentPagerAdapter. Và sau đó bạn đã cố gắng điều hướng đến đoạn thứ hai bằng cách sử dụng cùng một getFragmentManager().

Nếu vậy thì hãy chuyển getChildFragmentManager() tới FragmentPagerAdapter.

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