Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/192.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
故意强迫android等待并在后台加载内容_Android_Multithreading_Android Asynctask - Fatal编程技术网

故意强迫android等待并在后台加载内容

故意强迫android等待并在后台加载内容,android,multithreading,android-asynctask,Android,Multithreading,Android Asynctask,我想迫使android在等待的同时继续处理一些事情。我已经看到了线程等待功能,但这只会让事情暂停一段时间,而实际上并没有让应用程序做任何事情。后续进程只是排队等待轮到它们 我想强制一个进程的计时。这是一种具有等待线程和异步任务的组合 “等待”意味着将线程置于挂起状态-你的意思是让应用程序在进程完成之前什么都不做吗 public class yourActivity extends Activity{ final WebView yourWebview; //this is the webview

我想迫使android在等待的同时继续处理一些事情。我已经看到了线程等待功能,但这只会让事情暂停一段时间,而实际上并没有让应用程序做任何事情。后续进程只是排队等待轮到它们

我想强制一个进程的计时。这是一种具有等待线程和异步任务的组合


“等待”意味着将线程置于挂起状态-你的意思是让应用程序在进程完成之前什么都不做吗

public class yourActivity extends Activity{
final WebView yourWebview; //this is the webview
Context mContext = this;

public void onCreate(Bundle B){
setContentView(R.id.somethingtoshow);//this will be shown while webview working

Runnable yourRun = new Runnable(){
public void run(){
yourWebview = new WebView(mContext);
//do whatever you want with it
//loadUrl and whatever you want

//when your done
runOnUiThread(new Runnable(){
public void run(){
setContentView(yourWebView);
}
});

}
};
Thread T= new Thread(yourRun);
T.start();
}

}
你永远不想让主事件线程挂起或等待,这会让用户认为应用程序已冻结。为了完成您想要的任务,您可能会生成一个异步线程,从主活动加载页面。该活动将继续显示您上次让它执行的任何操作,并且在后台进行异步时不会挂起或冻结。但是,用户仍然可以按按钮,这可能会把您搞得一团糟


因此,要使应用程序看起来未冻结,并允许在后台进行处理,您需要进入一些加载屏幕或限制用户在主布局上的选项。这将允许活动继续进行,但允许用户获得流畅的体验。

请提供更多解释?我不想再像加载屏幕那样误解了?这是一个非阻塞事件线程与一些图像+和异步线程在后台加载的组合。不计算。。。你“想强迫android等待”加上“同时继续处理某些事情”。你的意思是在主线程等待时生成另一个线程并执行其他操作吗?@sqrfv webview加载某些内容的方式有延迟,我想强制应用程序等待,以便用户体验看起来正常