下面通过实现点击按钮来显示加载框,2秒后自动消失。
1、首先在layout的xml中添加一个按钮:
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="32dp"
android:layout_marginTop="14dp"
android:background="@drawable/button_style"
android:text="@string/btnText" />
2、在后台java代码中添加View.OnClickListener事件,重写onClick,代码如下:
processButton = (Button) findViewById(R.id.button1);
processButton.setOnClickListener(myOnClickLister);
View.OnClickListener myOnClickLister = new View.OnClickListener()
{ public void onClick(View v)
{
final ProgressDialog proDialog = android.app.ProgressDialog.show(MainActivity.this, "测试", "2秒后自动消失!");
Thread thread = new Thread()
{
public void run()
{
try
{
sleep();
} catch (InterruptedException e)
{
// TODO 自动生成的 catch 块
e.printStackTrace();
}
proDialog.dismiss();//万万不可少这句,否则会程序会卡死。
}
};
thread.start(); }
};
3、这样就利用线程的sleep的方式来实现了。但是要注意的一点是,必须在线程结束时调用对话框对象的dismiss()方法,否则程序将进入死循环当中。卡死在那里。
4、效果出来了,就是这样的: