2011-12-13 6 views
1

の属性が1つだけオーバーロードされていることを除いて、アンダースコアButtonの外観に過負荷をかけたいと思います。ボタンスタイル

parent="???"は私が継承したスタイルを指定
<style name="App_TextButtonStyle" parent="???"> 
    <item name="android:background">@drawable/filled_roundededges_nostroke</item> 
</style> 

:私は、私のようなものを書くことができ知っています。私の質問は、どのスタイルから継承する必要がありますか、私はボタンのアンドロイドデフォルトスタイルからすべてを取得し、ちょうど新しい背景を定義します。

答えて

1

これは、将来の訪問者のためほとんどですが、私は問題の解決策を見つけた:

<style name="App_TextButtonStyle" parent="@android:style/Widget.Button"> 
    <item name="android:background">@drawable/filled_roundededges_nostroke</item> 
</style> 

@android:style/Widget.Buttonは、現在選択されているテーマで、ボタンのデフォルトのスタイルを参照します。また、ホロウィジェットボタンのスタイル@android:style/Widget.Holo.Button(api 11以降利用可能)を使用することもできます。

styles.xmlthemes.xmlのファイルについては<android-sdk-install-folder>/platforms/android-XX/data/res/valuesを見て、特定のプラットフォームのバージョンですべてのスタイルのAndroidの使用をチェックしたいと思うかもしれません。

+0

どのようにしてこのスタイルを使用するテーマを手に入れましたか?これを追加することはできませんでした: @ style/App_TextButtonStyle Eliot

1

私は、私はあなたが「親」せずに、あなたのスタイルを定義することは十分に可能性を考える「親」属性

<style name="BigButtonStyle"> 
    <item name="android:layout_width">wrap_content</item> 
    <item name="android:layout_height">wrap_content</item> 
    <item name="android:layout_gravity">center_horizontal</item> 
    <item name="android:background">@drawable/backbutton</item> 
    <item name="android:textColor">#FFFFFF</item> 
    <item name="android:textSize">8pt</item> 
    <item name="android:textStyle">bold</item> 
    <item name="android:layout_margin">10pt</item> 
</style> 

を指定せずにボタンのスタイルを使用していました。

+0

私の問題は、どのテーマカラーが現在使用されているかをどのようにして決定するのですか?つまり、明るいテーマでは、白いボタンが見栄えが良いかもしれませんが、4.0のようなカードのテーマでは、白いボタンが奇妙に見えるでしょう。私は残りの部分が現在のテーマに依存する一方で、属性に過負荷をかけたいと思っています。 –

+0

これは私が問題に見いだした、理想から遠く離れていても最も近いソリューションです。 –

関連する問題