2011-07-31 17 views
1

我仍然有點困惑如何重新調整大小的圖像,以適應Android手機上的小,正常和大屏幕。如何弄清楚圖像尺寸應該適用於多個屏幕?

說我有一個圖像是500px乘500px,是一個JPG。

我想讓4個圖像按鈕在屏幕的中心成爲2×2。爲了簡單起見,假定我爲所有4個按鈕使用了相同的圖像。

現在我該如何計算出需要爲每個屏幕縮小圖像的大小?

因此,它會看起來像這樣在視圖的中心。

x x 

x x 

回答

1

我想你想要一個9補丁drawable(* .9.png)。它們允許您製作可拉伸的圖形並聲明內容填充區域。 Android的股票按鈕使用它們。

http://developer.android.com/guide/developing/tools/draw9patch.html

http://developer.android.com/guide/topics/graphics/2d-graphics.html#nine-patch

因爲你可能會想使他們改變基礎上,他們是處於什麼狀態,你使用StateList可繪製該按鈕。

http://developer.android.com/guide/topics/resources/drawable-resource.html#StateList

下面是從我的應用程序來呈現一個操作欄按鈕一個按鈕StateList的例子。

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_pressed="true" android:drawable="@color/slight_white" /> <!-- pressed --> 
    <item android:state_focused="true" android:drawable="@android:color/transparent" /> <!-- focused --> 
    <item android:drawable="@android:color/transparent" /> <!--menu_normal default --> 
</selector> 

在這種情況下,我使用的顏色,但你當然可以用任何drawable來替換它。包括你製作的9個可修補的繪圖。

有關完整的示例,請參閱SDK附帶的源代碼。

%ANDROID_SDK_ROOT%\平臺\ Android的12 \ DATA \水庫\繪製\ btn_default.xml

+0

我該如何判斷哪個選擇器應該使用哪個按鈕?此外,我試圖只是把我的相對佈局後選擇器,它似乎不是那樣的。 – xiao

+0

嗯我正在看的例子,我把btn_default權利剪切到我的文件中,但我得到「選擇器」元素沒有聲明「。我不知道這是否與我使用monodroid而不是android的事實有關。 – xiao