アプリケーションでテキストprogress bar with rounded circle
とともに andを使用したいと考えています。loading....
もっと探してきました。しかし、まだ明確なアイデアが得られていません。
デフォルト バー:
予想バー:
注:これは、webview の xml ファイルでのみ実行したいと考えています。誰でも私を助けてくれませんか
アプリケーションでテキストprogress bar with rounded circle
とともに andを使用したいと考えています。loading....
もっと探してきました。しかし、まだ明確なアイデアが得られていません。
デフォルト バー:
予想バー:
注:これは、webview の xml ファイルでのみ実行したいと考えています。誰でも私を助けてくれませんか
ページの読み込み時にカスタム ダイアログを表示し、ページの終了時に非表示にするロジックを実装できるカスタムWebView クライアントをコーディングする必要があります。
Android WebView と Indeterminant Progress Solution をご覧ください。
I want to do this only in xml file for webview. Could anybody please help me
どういう意味ですか?プログレスバーのUIを変更しますか?
はいの場合は、UI の変更に役立つ円形プログレス バーのカスタマイズに関する私のブログをご覧ください。
以下のコードを試してください:
レイアウト: main.xml
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<WebView
android:id="@+id/webView"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
<LinearLayout
android:id="@+id/llProgress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center"
android:orientation="horizontal"
android:visibility="gone" >
<ProgressBar
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/tvMessage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp" />
</LinearLayout>
</FrameLayout>
コード: MainActivity.java
public class MainActivity extends Activity {
private LinearLayout llProgress;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
llProgress = (LinearLayout) findViewById(R.id.llProgress);
showProgress("Loading...");
}
private void showProgress(String message) {
((TextView) llProgress.findViewById(R.id.tvMessage)).setText(message);
llProgress.setVisibility(View.VISIBLE);
}
private void hideProgress() {
((TextView) llProgress.findViewById(R.id.tvMessage)).setText("");
llProgress.setVisibility(View.GONE);
}
}
MyProgressDialog.class
:- 呼び出し時に循環ダイアログを返すクラス。
import android.app.Dialog;
import android.content.Context;
import android.view.ViewGroup.LayoutParams;
import android.widget.ProgressBar;
public class MyProgressDialog extends Dialog {
public static MyProgressDialog show(Context context, CharSequence title,
CharSequence message) {
return show(context, title, message, false);
}
public static MyProgressDialog show(Context context, CharSequence title,
CharSequence message, boolean indeterminate) {
return show(context, title, message, indeterminate, false, null);
}
public static MyProgressDialog show(Context context, CharSequence title,
CharSequence message, boolean indeterminate, boolean cancelable) {
return show(context, title, message, indeterminate, cancelable, null);
}
public static MyProgressDialog show(Context context, CharSequence title,
CharSequence message, boolean indeterminate,
boolean cancelable, OnCancelListener cancelListener) {
MyProgressDialog dialog = new MyProgressDialog(context);
dialog.setTitle(title);
dialog.setCancelable(cancelable);
dialog.setOnCancelListener(cancelListener);
/* The next line will add the ProgressBar to the dialog. */
dialog.addContentView(new ProgressBar(context), new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
dialog.show();
return dialog;
}
public MyProgressDialog(Context context) {
super(context, R.style.NewDialog);
}
}
に配置する必要があるNewDialog のStyleString.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!--=====This is the Style for the progressBar==================== -->
<style name="NewDialog">
<item name="android:windowFrame">@null</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowTitleStyle">@null</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
<item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item>
<item name="android:backgroundDimEnabled">false</item>
<item name="android:background">@android:color/transparent</item>
</style>
<!--============================================== -->
</resource>
ProgressDialog
か?? それはこの方法です:-Dialog pd; // Declare it on the Top of the Activity using it to make it Global.
//Start of Dialog
pd=MyProgressDialog.show(ActivityName.this, "Loading", "");
// To Stop the Dialog
pd.dismiss();