2013-02-25 201 views
1

我正在嘗試更改我的應用中幾個按鈕的高度。更改按鈕的高度

my app screenshot

我已經嘗試設置@android:color/transparent作爲android:background,我也嘗試了layout_height設定值一樣16dp

我怎麼能給我的按鈕更小的高度?

這裏是風格的XML:

<style name="Theme.PMBAppTheme.TextButton"> 
    <item name="android:textStyle">bold</item> 
    <item name="android:textSize">14sp</item> 
    <item name="android:textColor">@drawable/text_button_text</item> 
    <item name="android:background">#ff3300</item> 
    <item name="android:padding">0dp</item> 
    <item name="android:height">20sp</item> 
</style> 

而且佈局:

<Button 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/register_btn_privacy" 
     android:text="@string/privacy_policy" 
     style="@style/Theme.PMBAppTheme.TextButton" 
     /> 

text_button_text

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android" > 
    <item android:state_focused="true" android:state_pressed="true" android:color="@color/muted_pink_over" /> 
    <item android:state_focused="false" android:state_pressed="true" android:color="@color/muted_pink_over" /> 
    <item android:color="@color/muted_pink" /> 
</selector> 
+0

你可以發佈你的XML – Kirk 2013-02-25 18:04:16

+0

@Kirk - 抱歉,完全忘了這麼做。它現在在那裏。 – boz 2013-02-26 09:14:19

回答

4

設置按鈕的高度,爲wrap_content:

android:layout_height="wrap_content" 

應該將按鈕的高度設置爲最小以顯示其文本。

+0

我已經將它設置爲'wrap_content',併產生了上述結果:( – boz 2013-02-26 09:13:45

1

Vapor API(我剛剛發佈的一個針對Android的jQuery樣式框架)中,有一種方法可以使用,名爲.size(int,int)。這根據您所在的容器類型設置您的View的尺寸。因此,像:

$.Button(R.id.register_btn_privacy).size(int width, int height); 

什麼是酷的,你也可以調用鏈調整View的其他屬性。例如:

$.Button(R.id.register_btn_privacy) 
.size(50,100) // set size 
.text("Privacy Policy") // set the text 
.bgColor(Color.RED) // set the background color 
.color(Color.WHITE); // set the text color 

檢查出來,如果你有興趣在Vapor API website,它的基本設計,使Android開發人員輕鬆了許多,並像使用jQuery。

+0

這看起來很有趣,但我真的剛剛開始與Android開發。這將是很好的學習如何做的事情沒有任何額外的框架/圖書館 – boz 2013-02-26 09:37:14

+0

這是公平的!只是拋出它,因爲當我第一次來到Android時,我發現它有點混亂,祝你好運 – ComethTheNerd 2013-02-26 09:44:33

1

刪除這個來自你的風采

<item name="android:height">20sp</item> 

所以,如果你TextView結束了

<style name="Theme.PMBAppTheme.TextButton"> 
    <item name="android:textStyle">bold</item> 
    <item name="android:textSize">14sp</item> 
    <item name="android:textColor">@drawable/text_button_text</item> 
    <item name="android:background">#ff3300</item> 
    <item name="android:padding">0dp</item> 
</style> 

Button繼承並根據TextViewandroid:height,這大概正好設置高度,使其忽略您的layout_height

+0

謝謝,但這是不行的,我想我會去必須使用'TextView'並使其可點擊而不是'Button' – boz 2013-02-26 17:21:20

+0

你能發佈'@ drawable/text_button_text'的定義嗎?也許在那裏有一些意想不到的東西。 – Kirk 2013-02-26 18:08:15

+0

我已經更新了我的問題,它只是幾種顏色。 – boz 2013-02-27 09:09:06