7

私のアプリケーションでは、次の図に示すように、ヘッダーのようTextViewに見えるスタイルを設定したいと思います-TextView

styles.xml(下記)のスタイルを適用すると、指定されたフォントとフォントの色が適用されます。ただし、白い背景は適用されません。私たちはこれを行うことができますか?

定義されたスタイルは次のようになります-

<?xml version="1.0" encoding="utf-8"?>

<style name="settings_header">
    <item name="android:layout_marginBottom"> 10dip </item>
    <item name="android:background"> @color/white </item>
    <item name="android:paddingLeft"> 10dip </item>
    <item name="android:layout_width"> match_parent </item>
    <item name="android:layout_height"> wrap_content </item>
    <item name="android:textSize"> 22sp </item>
    <item name="android:textColor"> @color/black </item>
    <item name="android:textStyle"> bold </item>
</style>

スタイルを適用するコードは次のようなものです

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
textview = (TextView) findViewById(R.id.textView);
textview.setTextAppearance(ScrSettings.this,R.style.settings_header);
}
4

4 に答える 4

0

public void setTextAppearance(コンテキストコンテキスト、int resid)

指定されたTextAppearanceリソースから、テキストの色サイズスタイルヒントの色、およびハイライトの色を設定します。

これは、setTextAppearanceの実際の出力です。setTextAppearanceメソッドの動作を読まずに背景色について考えているのはなぜですか?

styles.xmlで設定しているすべてのプロパティが必要な場合はstyle="@style/settings_header"、XMLファイルでのみ使用してください。

ご理解いただければ幸いです。

編集

実行時に背景色を設定するには、setBackgroundColorメソッドを使用します。

于 2012-02-06T11:28:13.890 に答える
0

回避策として、これは機能します

textview.setTextAppearance(context, R.style.settings_header);
textview.setBackgroundResource(R.color.white);

背景を2回に設定することは私たちが望んでいることではないため、質問にはまだ完全には答えられていTextViewません。で背景を設定しましたstyles.xml

于 2012-02-09T10:53:34.210 に答える
-1

解像度にカラーフォルダがない場合は、@ color/whiteを#ffffffに置き換える必要があります

于 2012-02-06T10:34:31.733 に答える
-1

私はその助けがあれば今はいけません

これを試してください@color/#fff

「白」の代わりに

幸運を

于 2012-02-06T10:32:01.877 に答える