我正在使用名为“导航抽屉活动”的Android Studio模板。它带有一个ActionBar活动和菜单中预装的3个“部分”。
我正在尝试在其中一个部分打开时创建一个“加载”弹出窗口。为此,我打开菜单并选择第2部分。
我只能使用按钮和onClick操作来弄清楚如何执行此操作。我不想要按钮,但我希望它在打开部分时自动运行,然后在3秒后解除。这是我到目前为止所提出的:
// 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);
}
});
答案 0 :(得分:0)
U =试试这段代码
Runnable mRunnable = new Runnable() {
public void run() {
sleep(3000);
if (dlg != null && dlg.isShowing()) dlg.dismiss();
}
};
答案 1 :(得分:0)
这似乎是最简单的方法。在3000ms后打开和关闭。
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);