我想在按下按钮时启动 Main2Activity 任务(加载WebView)但不显示Main2Activity的屏幕,直到 onPageFinished()被称为。我有一些想法可以通过Intents得到这个但是它似乎不起作用。 这是我的代码:
MainActivity.java :
public class MainActivity extends AppCompatActivity {
Handler handler = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
Intent intent = new Intent(MainActivity.this,Main2Activity.class);
startActivity(intent);
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Button button = (Button)findViewById(R.id.Button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final Runnable runnable = new Runnable() {
@Override
public void run() {
handler.sendEmptyMessage(0);
}
};
Thread thread = new Thread(runnable);
thread.start();
}
}
);
}
}
Main2Activity.java :
public class Main2Activity extends AppCompatActivity {
Intent intent;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
final WebView webView = (WebView)findViewById(R.id.webview);
webView.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(webView, url);
intent.putExtra("DONE",1);
// Toast.makeText(getApplicationContext(), "Done!",
//Toast.LENGTH_SHORT).show();
}
});
webView.loadUrl("file:///android_asset/2.2.html");
}
}
这可能使用Intents,或者我必须使用其他一些技术吗? 我怎样才能实现这一目标?
全部谢谢。
答案 0 :(得分:0)
我认为您应该在按钮点击时直接转到Main2Activity,而不需要调用MainActivity中的任何线程。
然后在Main2Activity中显示一个图像或其他东西,直到onPageFinished()被调用。