0

進行状況ダイアログを表示するために、次のコードがあります。

@Override
public void onPreExecute() {
    if(progress == null)
    progress = ProgressDialog.show(MainActivity2.this, null , null);
    progress.setContentView(R.layout.progressbar_activity);
}

これは私のprogressDialogレイアウトです。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/layout_root"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal" >

    <ProgressBar
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         style="@android:style/Widget.ProgressBar.Small.Inverse"
         android:layout_marginRight="5dp" />

     <TextView
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="@string/loading" />

</LinearLayout>

これが私のメインのアクティビティ レイアウトです。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@android:color/white"
    android:orientation="vertical"
    tools:context=".MainActivity" >

    <LinearLayout
        android:id="@+id/tittle_bar"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@android:color/black"
        android:gravity="center"
        android:orientation="vertical"
        android:paddingTop="6dip" >

        <Button
            android:id="@+id/start_progress"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:text="@string/hello_world" />
    </LinearLayout>

</RelativeLayout>

ご覧のとおり、背景色はです。

mainActivity のボタンをクリックすると、進行状況ダイアログが表示されますが、ページの背景色が灰色になります。

ここに画像の説明を入力 --------> ここに画像の説明を入力

デフォルトでは白、進行状況ダイアログのテキストは黒にしたい。私は何が欠けていますか?

4

4 に答える 4

1

<include layout="@layout/progress_bar" />メインのアクティビティ レイアウトを追加することで問題を解決しました。

次に、 ProgressDialog レイアウトの ProgressDialog に などの名前を付けましたandroid:id="@+id/progress_bar

次に、このコードでダイアログを非表示にしました。

@Override
protected void onPostExecute(String result) {
    ProgressBar progressBar = (ProgressBar) findViewById(R.id.progress_bar);
    progressBar.setVisibility(View.GONE);
}
于 2013-04-05T12:47:11.277 に答える
0

progressDialog レイアウトで、メインに透明な背景を使用しLinearLayout、 に黒色を使用してみてくださいTextView

このような:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/layout_root"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal" 
    android:background="#00000000">

    <ProgressBar
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         style="@android:style/Widget.ProgressBar.Small.Inverse"
         android:layout_marginRight="5dp" />

    <TextView
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="@string/loading"
         android:textColor="#000000" />
</LinearLayout>
于 2013-04-03T12:59:36.053 に答える