2014-10-06 46 views
0

我有一些問題,我的一個屏幕上的佈局,它不能很好地重新調整,一些文字彈出了按鈕等...在不同的屏幕(安卓)使用不同的佈局風格

我想到了一個修復爲此,但我需要你的幫助。

在我的XML我已創建:

<style name="styleforS5" parent="android:style/Widget.ImageButton"> 
    <item name="android:background">@null</item> 
    <item name="android:layout_width">wrap_content</item> 
    <item name="android:layout_height">wrap_content</item> 
    <item name="android:layout_weight">1.0</item> 
    <item name="android:paddingTop">5dp</item> 
    <item name="android:paddingBottom">5dp</item> 
</style> 

<style name="samsungTablet" parent="android:style/Widget.ImageButton"> 
    <item name="android:background">@null</item> 
    <item name="android:layout_width">wrap_content</item> 
    <item name="android:layout_height">wrap_content</item> 
    <item name="android:layout_weight">2.0</item> 
    <item name="android:paddingTop">15dp</item> 
    <item name="android:paddingBottom">5dp</item> 
</style> 

現在我的問題是下一步:我怎麼能寫,如果輸入的是平板電腦,應該使用samsungTablet風格,當它的S5就應該使用stylefors5?

感謝您的幫助, 扎克

+0

很確定的答案是 - 不要這樣做。似乎答案需要對點和程序進行廣泛的指導,以避免這樣做。有一個系統提供了很大的問題。 – ChiefTwoPencils 2014-10-06 08:07:07

+0

我已經嘗試了很多修補程序。沒有工作,所以這似乎是我眼中最好的選擇。 – Zakdroid 2014-10-06 08:14:38

回答

0

也許解決方案是隻有一個樣式爲兩個設備,但基於最小可用寬度在兩個特定的文件夾,把它定義(見Supporting Multiple Screen):

對於智能手機(S5):RES /值/ styles.xml

<style name="ImageButtonStyle" parent="android:style/Widget.ImageButton"> 
    <item name="android:background">@null</item> 
    <item name="android:layout_width">wrap_content</item> 
    <item name="android:layout_height">wrap_content</item> 
    <item name="android:layout_weight">1.0</item> 
    <item name="android:paddingTop">5dp</item> 
    <item name="android:paddingBottom">5dp</item> 
</style> 

而對於片劑:RES /值-sw600dp/styles.xml

<style name="ImageButtonStyle" parent="android:style/Widget.ImageButton"> 
    <item name="android:background">@null</item> 
    <item name="android:layout_width">wrap_content</item> 
    <item name="android:layout_height">wrap_content</item> 
    <item name="android:layout_weight">2.0</item> 
    <item name="android:paddingTop">15dp</item> 
    <item name="android:paddingBottom">5dp</item> 
</style> 

有了這些文件夾,Android系統會根據屏幕大小選擇「正確」的樣式來使用。

+0

我認爲這確實是一個更好的解決方案。要嘗試一下,但我沒有標準值-sw600dp/styles目錄,我應該手動創建它還是? – Zakdroid 2014-10-06 09:05:39

+0

是的,你可以手動創建它,或者如果你使用Android Studio,你可以創建一個新的Android資源目錄,並添加一個「最小屏幕寬度」限定符 – 2014-10-06 09:07:58

+0

工作就像一個魅力,謝謝隊友! – Zakdroid 2014-10-06 10:28:05

相關問題