2013-02-27 40 views
5

Tôi đang gặp phải một vài trở ngại khi tạo kiểu ActionBar.Biểu tượng trên thanh tác vụ bật trong biểu tượng ứng dụng trên ActionView mở rộng

Sự cố hiện tại của tôi là biểu tượng/biểu tượng khi mở rộng ActionView. Vì lý do nào đó, nó không sử dụng biểu tượng có thể vẽ ở đây nhưng biểu tượng ứng dụng có thể vẽ được. Tôi muốn điều này đã biến mất hoặc được đặt thành bản vẽ của riêng tôi. Tôi đã thử đặt biểu tượng trực tiếp trong onMenuItemActionCollapse() bằng cách sử dụng chức năng setIcon() của ActionBar không có may mắn. Cũng cố gắng thiết lập các công cụ nhà và biểu tượng trong đó.

Bất kỳ ý tưởng nào về cách giải quyết vấn đề này?

+0

có cùng sự cố. Bạn đã tìm thấy một giải pháp? – user123321

Trả lời

8

Tôi tìm thấy nó, mặc dù không có nơi tài liệu, khi tôi đã đi qua nguồn tôi thấy nó thực sự sử dụng biểu tượng thay vì logo. Những gì tôi cũng tìm thấy là có một thuộc tính được gọi là icon trong actionBarStyle. Vì vậy, các công trình sau đây:

<style name="action_bar" parent="@android:style/Widget.ActionBar"> 
    <item name="android:logo">@drawable/logo</item> 
    <item name="android:icon">@drawable/logo</item> 
</style> 
+0

yea, nhưng nếu logo của bạn khác với biểu tượng của bạn như ứng dụng youtube thì sao? – user123321

+0

Sau đó, bạn đang ra khỏi may mắn tôi sợ. Các giải pháp khác duy nhất là để ẩn lên và biểu tượng chỉ số và đặt một cái nhìn tùy chỉnh có – Nick

+3

Tôi tìm thấy nếu tôi đặt nó lập trình vấn đề biến mất. Trông giống như một con bọ câm. – user123321

0

Vì vậy, tôi đi qua cùng một vấn đề và cố định nó theo cách này:

  1. Hãy chắc chắn rằng bạn có drawables thích hợp cho logo của bạn. Tôi đã sử dụng Android Asset Studio để thực hiện việc này.
  2. Trong tệp kê khai của bạn, dưới application, đảm bảo bạn chỉ định biểu tượng và biểu tượng của mình.
  3. Trong hoạt động của bạn (hoặc, trong trường hợp của tôi, đoạn) đặt biểu tượng ActionBar của biểu tượng bằng cách sử dụng setIcon.

Khi tôi giải quyết vấn đề này, # 3 "đã làm việc" cho tôi, nhưng biểu tượng đã trở thành phiên bản nhỏ hơn của ActionBar, vì vậy tôi đảm bảo rằng tôi có kích thước phù hợp trong ứng dụng của mình Tôi đã không vào thời điểm đó).

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