2

Android では、次のようなレイアウト ファイルをよく見かけます。

<?xml version="1.0" encoding="utf-8"?>    
<CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@android:id/text1"
        android:layout_width="match_parent"
        android:layout_height="?android:attr/listPreferredItemHeightSmall"
        android:textAppearance="?android:attr/textAppearanceListItemSmall"
        android:gravity="center_vertical"
        android:checkMark="?android:attr/listChoiceIndicatorMultiple"
        android:paddingStart="?android:attr/listPreferredItemPaddingStart"
        android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
    />

それは実際にはandroid.R.layout.simple_list_item_multiple_choiceレイアウトファイルです。

私が知りたいのは、アプリケーションでこのレイアウトを使用する場合、このファイルに記載されている属性をstyles.xml. たとえば、drawable を定義したいのですcheckMarkが、アプリケーションのテーマまたは styles.xml ファイルでこれを行うことはできますか? もしそうなら、どのように?現在、これらのファイルをコピーして、必要に応じて属性を変更するだけです。

4

1 に答える 1

-1

はい、可能です。テーマでこのスタイル属性をオーバーライドするだけです。たとえば、チェックマークのドローアブルを変更する場合:

android:checkMark="?android:attr/listChoiceIndicatorMultiple"

あなたのテーマに以下を入れてください:
<item name="android:listChoiceIndicatorMultiple">@drawable/your_custom_selector_for_check_mark</item>

この Web サイトhttp://android-holo-colors.com/を使用して、リソースとセレクターを作成できます。

于 2015-03-06T06:59:43.073 に答える