2013-04-29 22 views
1

要定義actionButton並設置它的圖標,我想:如何增加SherlockActionBar中actionButton的圖標大小?

<menu xmlns:android="http://schemas.android.com/apk/res/android" > 
    <item 
     android:id="@+id/m_login" 
     android:enabled="true" 
     android:showAsAction="always" 
     android:icon="@drawable/login"/> 
</menu> 

所得圖標(繪製/ LDPI)默認情況下,看起來非常小:(?任何方式增加大小)

enter image description here

這裏的圖標:

enter image description here

+0

嘗試給沒有填充的用戶放大圖片圖標,或者如果尺寸不適合您,您可以將該圖標添加爲自定義視圖並將onclick監聽器添加到該項目。 – hardartcore 2013-04-29 08:20:40

+0

@ Android-Developer附加的圖標足夠大嗎?我如何將它作爲自定義視圖來覆蓋sherlockactionbar? – Roylee 2013-04-29 08:23:31

回答

2

首先,我建議你嘗試不同大小的圖標,你想要的,沒有填充,直到你實現你的目標。如果不適合您,您可以在操作欄中添加自定義視圖,並在按鈕上設置OnClickListener並實現您的目標。這裏是一個如何做到這一點的方法:

View customNav = LayoutInflater.from(this).inflate(R.layout.my_button, null); // layout which contains your button. 
Button mButton = (Button) customNav.findViewById(R.id.date_num); 
mButton.setOnClickListener(this); 

getSupportActionBar().setCustomView(customNav); 
getSupportActionBar().setDisplayShowCustomEnabled(true); 

這應該做的伎倆。您可以使用Button或ImageButton來實現此目的。

+0

感謝您的答案,順便說一句,有沒有像覆蓋主題的風格來實現這一目標? – Roylee 2013-04-29 08:32:31

+0

是不是150 * 99夠高? – Roylee 2013-04-29 08:34:29

+1

您可以覆蓋主題,但不能更改菜單​​項的大小。根據http://developer.android.com/guide/practices/ui_guidelines/icon_design_action_bar.html,不同設備的尺寸和密度已經預先確定以保持一致性。 – hardartcore 2013-04-29 08:34:32

2

使用不帶填充的高分辨率透明PNG圖像。按照Icon Design Guidelines。您也可以使用Action Bar and Tab Icon Generator生成特定於指南的圖標。

+0

除此之外,還有什麼辦法可以破解sherlockactionbar來調整圖標的大小嗎? – Roylee 2013-04-29 08:26:07

+1

菜單項的大小是固定的,因此需要遵循設計準則,以便圖標的外觀在不同屏幕尺寸和密度的設備上保持整潔和光滑。所以增加圖像尺寸不會有太大的幫助。所以最好遵循指導原則。 – 2013-04-29 08:39:13

+0

好吧,我現在明白了。感謝您的解釋:) – Roylee 2013-04-29 08:41:15