2011-08-12 24 views

Trả lời

1

Bạn có thể làm bằng cách sử dụng onPrepareOptionsMenu, nơi bạn đặt mục trình đơn mà bạn muốn hiển thị cho người dùng, [http://developer.android.com/reference/android/app/Activity.html#onPrepareOptionsMenu% 28android.view.Menu% 29] [1]

[1]: http://developer.android.com/reference/android/app/Activity.html#onPrepareOptionsMenu%28android.view.Menu%29. Đừng thổi phồng bằng cách sử dụng xml chỉ cần làm theo cách thủ công.

Cảm ơn bạn.

+0

Cảm ơn. Nhưng tôi muốn ẩn menu tùy chọn tiêu chuẩn hệ thống vì nó không chứa mục trình đơn. Tôi nghĩ rằng onPrepareOptionsMenu chỉ sửa đổi mục menu của menu tùy chọn tiêu chuẩn hệ thống. – tangjie

1

Hãy thử điều này để bao gồm trong mã của bạn để các mục menu không tự động hiển thị khi bạn bắt đầu hoạt động.

public boolean onCreateOptionsMenu(Menu menu){ 

super.onCreateOptionsMenu(menu); 

//add the menu items here 

return true; 

} 

Bằng cách viết như thế này các mục trình đơn có thể nhìn thấy chỉ khi bạn nhấn vào nút menu của điện thoại thông minh Android

+0

Xin lỗi tôi chưa nêu rõ câu hỏi của tôi. Tôi muốn ẩn hoàn toàn menu tùy chọn khi người dùng nhập hoạt động của tôi. Tôi đã ghi đè phương thức onCreateOptionsMenu và trả về false, nhưng menu tùy chọn vẫn có thể được nhìn thấy. – tangjie

+0

trả về true sau đó bạn có thể thấy menu chỉ khi nhấn nút menu trên điện thoại. Điều này sẽ không bắt đầu ngay sau khi hoạt động bắt đầu. Nó bật lên khi người dùng nhấn nút menu trên điện thoại – Lavanya

0

Vì vậy, tôi muốn ẩn nút menu

Trên đại đa số các thiết bị Android, "nút menu" là một vật thể, và không thể được ẩn, bất kỳ nhiều hơn tôi có thể ẩn một ngọn núi hoặc một nốt ruồi.

Trên tổ ong, nếu bạn không xác định menu tùy chọn, bạn sẽ không nhận được nút "tràn" ở góc trên bên phải, trong thanh tác vụ.

Nếu bạn đang thử điều này trên một số thiết bị Android không tuân thủ có nút menu mềm riêng của nó, bạn sẽ không may mắn.

15

Tôi đã tìm ra cách thực hiện điều này. Trong AndroidManifest.xml của bạn, bạn cần phải xác định một cái gì đó như sau:

<uses-sdk android:minSdkVersion="8" 
      android:targetSdkVersion="14" /> 

Về cơ bản, minSdkVersion là phiên bản tối thiểu Android SDK mà bạn ứng dụng hỗ trợ (trong trường hợp của tôi, 2.2) và targetSdkVersion là phiên bản bạn "nhắm mục tiêu" (ví dụ: phiên bản "ưa thích" của bạn - trong trường hợp của tôi, đó là 4.0)

Theo mặc định, targetSdkVersion tương tự như minSdkVersion và về cơ bản bạn cho Android biết rằng ứng dụng của bạn là "cũ" và nó sẽ luôn hiển thị nút menu.

Nếu bạn thực hiện targetSdkVersion sau Honeycomb, sau đó nút menu sẽ chỉ được hiển thị nếu bạn thực sự có mục menu được xác định.

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