06读书笔记之进度条

来源:互联网 发布:ubuntu下安装jdk9 编辑:程序博客网 时间:2024/03/28 17:55

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;@Overrideprotected 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将会一直存在。

原创粉丝点击