1

アプリのダイアログとアラート ダイアログのテーマを変更するのに役立つ、 HoloColorsアクション バー スタイル ジェネレーターなどの類似のテーマ ジェネレーターはありますか?

私のアプリは Holo テーマを使用しており、EditTexts や Buttons などのビューのスタイルを変更できましたが、ダイアログに表示されたときに変更されません。タイトルの下の青い線の色も変更したいと思います。

このトピックに関連するいくつかの質問と回答を見つけましたが、実際には不可能だと言っています。そうじゃないなんて信じられない。

4

1 に答える 1

0

少なくとも AlertDialog では可能です。ここに、コードのある時点(ボタンクリックなど)で呼び出され、画面上にアラートダイアログ独自のレイアウトを作成する関数のソリューションを投稿しました。レイアウトは通常のlayout.xmlで、方法を定義できます欲しいです。私にぴったりです!

private void showAddUserGeneratedStationDialog() {

        AlertDialog.Builder alertDialog = new AlertDialog.Builder(
                AmplifyActivity.this);

        LayoutInflater inflater = getLayoutInflater();

            //inflate your layout.xml
        alertDialog
                .setView(inflater.inflate(R.layout.dialog_add_station, null));

            //show dialog over activity screen
        final AlertDialog ad = alertDialog.show();

            //put actions to your ui-elements
        Button cancelBtn = (Button) ad
                .findViewById(R.id.list_user_generated_cancelBU);
        cancelBtn.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                ad.cancel();
            }
        });

        Button doneBtn = (Button) ad
                .findViewById(R.id.list_user_generated_doneBU);
        doneBtn.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                            //get sth from your layout f.e. some textInput
                String stationUrl = ((TextView) ad
                        .findViewById(R.id.list_user_generated_stationURLInput))
                        .getText().toString();

                    // did some other things

                ad.dismiss();

            }
        });

    }

そして私のlayout.xml

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/list_user_generated_addStationDialog"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="#99000000"
    android:clickable="true"
    android:gravity="center"
    android:orientation="vertical" >

    <LinearLayout
        android:layout_width="300dp"
        android:layout_height="200dp"
        android:padding="10dp"
        android:background="#000"
        android:orientation="vertical" >

        <LinearLayout
            xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tools="http://schemas.android.com/tools"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" >

            <Button
                android:id="@+id/list_user_generated_cancelBU"
                style="@style/ButtonStyle"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center|right"
                android:text="@string/cancel" />

            <TextView
                style="@style/AmplifyHeadlineElement"
                android:layout_width="0dp"
                android:layout_height="fill_parent"
                android:layout_weight="1"
                android:text="@string/list_userGenerated_addStation" />

            <Button
                android:id="@+id/list_user_generated_doneBU"
                style="@style/ButtonStyle"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center|right"
                android:text="@string/done" />
        </LinearLayout>

        <EditText
            android:id="@+id/list_user_generated_stationURLInput"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="20dp"
            android:layout_marginTop="10dp"
            android:background="#FFF"
            android:ems="10"
            android:hint="@string/list_userGenerated_addUrlExample"
            android:inputType="textNoSuggestions" >
        </EditText>

        <!-- MORE BUT I DELETED  IT FOR BETTER OVERVIEW -->
    </LinearLayout>
</LinearLayout>
于 2013-02-01T15:44:30.283 に答える