PDA

View Full Version : ایجاد حالت لودگین قبل از بارگذاری وب ویو



rooterror
یک شنبه 02 خرداد 1395, 12:42 عصر
سلام دوستان خسته نباشید

من میخوام قبل از این که وب ویوم صفحهش باز بشه یه حالت لودینگ یه دایره بچرخه تا اینکه باز بشه

کسی از این مثلا داره در اختیارم قرار بده ؟

rooterror
یک شنبه 02 خرداد 1395, 17:34 عصر
دوستان کسی هست بتونه کمک کنه

saeidcd
دوشنبه 03 خرداد 1395, 10:26 صبح
ببین کارتو راه میندازه


public classMyActivityextendsActivity{
privateProgressDialog pd =null;
privateObject data =null;

publicvoid onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

// Show the ProgressDialog on this thread
this.pd =ProgressDialog.show(this,"Working..","Downloading Data...",true,false);

// Start a new thread that will download all the data
newDownloadTask().execute("Any parameters my download task needs here");
}

privateclassDownloadTaskextendsAsyncTask<String,Void,Object>{
protectedObject doInBackground(String... args){
Log.i("MyApp","Background thread starting");

// This is where you would do all the work of downloading your data

return"replace this with your data object";
}

protectedvoid onPostExecute(Object result){
// Pass the result data back to the main activity
MyActivity.this.data = result;

if(MyActivity.this.pd !=null){
MyActivity.this.pd.dismiss();
}
}
}
}

rooterror
پنج شنبه 06 خرداد 1395, 17:57 عصر
تستش نکردم فقط یک سوال کد هایی وب ویو رو باید تو کدوم قسمتش قرار بدم
؟

Nevercom
جمعه 07 خرداد 1395, 15:01 عصر
کلاس WebView متدی داره تحت عنوان setWebViewClient، در این متد می تونید یک WebViewClient معرفی کنید که کنترل WebView رو به دست بگیرید.

یک کلاس بسازید که از WebViewClient مشتق شده باشه، بعضی از متدها رو Override کنید تا کنترل این فرآیند رو به عهده بگیرید:



private class MyWebViewClient extends WebViewClient {
private ProgressDialog prDialog;


@Override
public void onPageFinished(WebView view, String url) {
prDialog.dismiss();
super.onPageFinished(view, url);
}


@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
prDialog = ProgressDialog.show(WebViewActivity.this, null, "loading, please wait...");
prDialog.setCancelable(true);
super.onPageStarted(view, url, favicon);
}


@Override
// show the web page in webview but not in web browser
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
}