1

ホームにウィジェットを追加するときにいくつかのプロセスがあります。まだ準備ができていないときに「読み込み中の画像」を追加するにはどうすればよいですか?

Youtubeウィジェットにこれがあることがわかりました。

ありがとう!

4

2 に答える 2

4

やった!=)

これが最善のアプローチかどうかはわかりません。お見せしましょう。

私のウィジェット xml で、進行状況バーを保持する 2 番目のレイアウトを追加しました。

widget_layout.xml

<LinearLayout android:id="@+id/progressLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ProgressBar android:id="@+id/widgetProgressBar" android:layout_width="match_parent"
        android:layout_height="match_parent" />

</LinearLayout>

元のレイアウトに次のコードを配置しました。

android:visibility="gone"

次に、すべてのプロセスが終了したら、次のことを行いました。

RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.widget_layout);

remoteViews.setViewVisibility(R.id.progressLayout, View.GONE);
remoteViews.setViewVisibility(R.id.layout, View.VISIBLE);

appWidgetManager.updateAppWidget(widgetId, remoteViews);

誰かがより良い方法を持っている場合は、お知らせください。

于 2012-12-20T14:26:29.667 に答える
0

ProgressBar を試しましたか? プロセスを開始すると、以下のコードを使用できます。

ProgressDialog mDialog;  //create a member vairable


//put this in what ever method you start your process
mDialog = new ProgressDialog(getApplicationContext());
mDialog.setMessage("Loading...");
mDialog.setCancelable(false);
mDialog.show();

すべてのプロセスが終了したら、次のように呼び出すことができます。

//call this when all processes are finished
mDialog.cancel();
于 2012-12-19T21:31:13.840 に答える