Java 如何自动加载一个弹出窗口,然后在加载区段3秒后自动关闭它?
我正在使用名为“导航抽屉活动”的Android Studio模板。它附带一个ActionBar活动和菜单中的3个预加载“部分” 当其中一个部分打开时,我试图创建一个“加载”弹出窗口。为此,我打开菜单并选择section 2 我只能通过使用按钮和onClick操作来解决这个问题。我不想按钮,但我想它自动运行时,该部分被打开,然后解散3秒后。以下是我到目前为止的想法:Java 如何自动加载一个弹出窗口,然后在加载区段3秒后自动关闭它?,java,android,android-activity,android-studio,Java,Android,Android Activity,Android Studio,我正在使用名为“导航抽屉活动”的Android Studio模板。它附带一个ActionBar活动和菜单中的3个预加载“部分” 当其中一个部分打开时,我试图创建一个“加载”弹出窗口。为此,我打开菜单并选择section 2 我只能通过使用按钮和onClick操作来解决这个问题。我不想按钮,但我想它自动运行时,该部分被打开,然后解散3秒后。以下是我到目前为止的想法: // get button Button btnShow = (Button)findViewByI
// get button
Button btnShow = (Button)findViewById(R.id.btn_show);
btnShow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder builder = new AlertDialog.Builder(v.getContext());
builder.setTitle("Connecting");
builder.setMessage("Please wait while we connect to your devices...");
builder.setCancelable(true);
final AlertDialog dlg = builder.create();
dlg.show();
Handler mHandler = new Handler();
Runnable mRunnable = new Runnable() {
public void run() {
if (dlg != null && dlg.isShowing()) dlg.dismiss();
}
};
mHandler.postDelayed(mRunnable, 2000);
}
});
U=试试这个代码
Runnable mRunnable = new Runnable() {
public void run() {
sleep(3000);
if (dlg != null && dlg.isShowing()) dlg.dismiss();
}
};
这似乎是最简单的方法。3000毫秒后打开和关闭
final ProgressDialog progress = new ProgressDialog(this);
progress.setTitle("Connecting");
progress.setMessage("Please wait while we connect to devices...");
progress.show();
Runnable progressRunnable = new Runnable() {
@Override
public void run() {
progress.cancel();
}
};
Handler pdCanceller = new Handler();
pdCanceller.postDelayed(progressRunnable, 3000);
你想什么时候打开弹出窗口?@Apurva当该部分打开或单击时。添加此项后,
sleep
出现错误无法解析方法sleep(int)
这似乎缺少一些信息。。。我想应该是Thread.Sleep(3000)代码>也会引发中断的异常。这也没有引用任何特定的章节?