Android之ProgressBar的使用

ProgressBar

ProgressBar用于在界面上显示一个进度条,表示我们的程序正在加载一些数据。
旋转的进度条表明我们的程序正在加载数据,,那数据总会有加载完的时候。
如何才能消失呢?
android控件的可见属性。所有的android控件都具有这个属性,可以通过android:visibility指定进行,可选值有3种:visible、invisible、和gone。

visible
表示控件是可见的,这个是默认值。
不指定android:visibility时
控件都是可见的。
invisible
表示控件不可见,但是它仍然占据着原来的位置和大小,可以理解成控件变成透明状态了。
gone
则表示控件不仅不可见,而且不再占用任何屏幕空间。

例:

public class Activity_main extends AppCompatActivity {
    private EditText editText;
    private ImageView imageView;
    private ProgressBar progressBar;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button button = (Button)findViewById(R.id.button);
        editText = (EditText)findViewById(R.id.edit_text);
        imageView = (ImageView)findViewById(R.id.image_view);
         progressBar = (ProgressBar) findViewById(R.id.progress_bar);
        button.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v) {
               /* String inputText = editText.getText().toString();
                Toast.makeText(Activity_main.this,inputText,Toast.LENGTH_SHORT).show();*/
                /*imageView.setImageResource(R.drawable.img_2);*/
                if (progressBar.getVisibility()==View.GONE){
                    progressBar.setVisibility(View.GONE);
                }
            }
        });

    }
	}

在按钮的点击事件中,我们通过getVisibility()方法来判断ProgressBar是否可见,如果可见就将ProgressBar隐藏掉,如果不可见就将ProgressBar显示出来,重新运行程序。

#AlertDialog
AlertDialog可以再当前的界面弹出一个对话框,这个对话框是置顶于所有界面元素之上的,能够屏蔽掉其他空间的交互能力,因此AlertDialog一般都是用于提示一些非常重要的内容或者警告信息。
比如为了防止用户误删重要内容,再删除前弹出一个确认话框。
首先通过AlertDialog.Builder创建一个AlertDialog的实例,然后可以为这个对话框设置标题、内容、可否取消等属性,接下来调用setPositiveButton()方法为对话框设置确定按钮的点击事件,调用setNegativeButton()方法设置取消按钮的点击事件,最后调用show()方法将对话框显示出来。

AlertDialog.Builder dialog = new AlertDialog.Builder(Activity_main.this);
                dialog.setTitle("This is Dialog");
                dialog.setMessage("something  important.");
                dialog.setCancelable(false);
                dialog.setPositiveButton("OK",new DialogInterface.OnClickListener(){
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                    }
                });
                dialog.setNegativeButton("Cancel",new DialogInterface.OnClickListener(){
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                });
                dialog.show();

ProgressDialog

ProgressDialog和AlertDialog有点类似。都可以在界面上弹出一个对话框,都能够屏蔽掉其他控件的交互能力。
不同的是:
ProgressDialog会在对话框中显示一个进度条,一般用于表示当前操作比较耗时,让用户耐心地等待。

ProgressDialog progressDialog = new ProgressDialog(Activity_main.this);
                    progressDialog.setTitle("This is  ProgressDialog");
                    progressDialog.setMessage("Loading...");
                    progressDialog.setCancelable(true);
                    progressDialog.show();

注意:如果在setCancelable()中传入了false,表示Progre

ssDialog是不能通过Back键取消掉的,这时就要在代码中做好控制,当数据加载完成后必须要调用ProgressDialog的dismiss()方法来关闭对话框,否则ProgressDialog将会一直存在。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值