2010-12-03 9 views
6

こんにちは、ListPreferenceポップアップウィンドウのリスト内のアイテムのテキストの色を変更しようとしています。私は様々なスタイルの名前のすべてを見て1時間以上を費やしましたが、私はTextAppearanceまたはこの特定のテキストに行く何かを見つけることができません。ご協力いただきありがとうございます!AlertDialogのリストアイテムのテキストカラーを変更するには

+0

ListPreferenceが使用するスタイルは何ですか?私はダイアログ(背景)と同じ問題があったと伝えることができますし、元のDialog.Themeを継承して自分のプロパティを変更することができるように、私のためのintとしてテーマを含むC'torがあることがわかりました。 – codeScriber

+0

いいえ、これは本質的に私の質問です.AlertDialogの 'ListView'のテキストの色を変更するためにどのスタイルを上書きする必要がありますか? – schwiz

+0

あなたの質問はListPreferenceと関係しているので、 ...これがあなたに役立つかどうかはわかりませんが、AlertDialogのListViewを参照すると、私はそれを手伝うことができます。 http://www.anddev.org/code-snippets-for-android-f33/icon-list-in-alertdialog-t49975.html – androidworkz

答えて

1

あなたはそうすることはできません。 *Preferenceは、メーカーによって変更される可能性があるcom.android.internal.R.styleableのスタイルを使用します。デフォルトのものを使用するという考えは、あなたのデバイスのすべての設定画面が同じように見えるということです。

一方android:theme="@android:style/Theme.Dialog"ActivityをアプリのAndroidManifestで試してみて、ListViewのスタイルを自由に設定できます。

+0

私はPreference自身にテーマを適用していませんが、AlertDialogには適用していません。テーマは他のすべてのAlertDialogsで素晴らしいように見えるが、残念なことに副作用は 'ListPreference'も' AlertDialog'を使用しているので、私は暗い背景があり、テキストは読み込み不能です。 'AlertDialog'テーマをオーバーライドしない' PreferenceActivity'の特別なケーススタイルを作ることができますが、それがアプリの残りの部分とマッチするといいでしょう。 – schwiz

+0

テーマを変更する場合は、 Theme.Dialogスタイルでアクティビティを作成し、必要な操作を行います。 – Macarse

+0

Preference.DialogPreferenceは、ListPreferenceの親のスタイルであり、ListPreferenceの直接的スタイルであるとは限りません。テーマの特定のスタイルをオーバーライドしてすべてのアクティビティに適用できます。このウォッチはすべてのAlertDialogには影響しません。 – codeScriber

-1

Viewのどの種類がListPreferenceを使用しているかはわかりませんが、おそらくTextViewのようなものです。もしそうなら、あなたはスムースを好むことができます:

TextView textView; 
String myString; 
//.... 
SpannableString spanString=new SpannableString(myString); 
spanString.setSpan(new ForegroundColorSpan(Color.RED), 0, myString.length(), Spanned.SPAN_INCLUSIVE_INCLUSIVE); 
textView.setText(spanString); 
+0

これは答えではありません。まずは'TextView'への参照です。私はスタイルを通してこれを修正する方法を探しています。ありがとう。 – schwiz

関連する問題