当前位置: 首页 > news >正文

天津网站建设电焊机推广平台哪儿有怎么做

天津网站建设电焊机,推广平台哪儿有怎么做,南阳那里有做网站的,高端建筑设计公司上节我们对Dialog的父类:AlertDialog进行了学习,而本节我们来学习下几个常用的 Dialog的基本使用,他们分别是:ProgressDialog(进度条对话框),DatePickerDialog (日期选择对话框)和TimePickerDialog(时间选择对话框)~&a…

上节我们对Dialog的父类:AlertDialog进行了学习,而本节我们来学习下几个常用的 Dialog的基本使用,他们分别是:ProgressDialog(进度条对话框),DatePickerDialog (日期选择对话框)和TimePickerDialog(时间选择对话框)~,话不多说,开始本节内容~


1.ProgressDialog(进度条对话框)的基本使用

我们创建进度条对话框的方式有两种:

  • 1.直接调用ProgressDialog提供的静态方法show()显示
  • 2.创建ProgressDialog,再设置对话框的参数,最后show()出来

代码示例

运行效果图

关键实现代码

MainActivity.java

public class MainActivity extends AppCompatActivity implements View.OnClickListener{private Button btn_one;private Button btn_two;private Button btn_three;private ProgressDialog pd1 = null;private ProgressDialog pd2 = null;private final static int MAXVALUE = 100;private int progressStart = 0;private int add = 0;private Context mContext = null;//定义一个用于更新进度的Handler,因为只能由主线程更新界面,所以要用Handler传递信息final Handler hand = new Handler(){@Overridepublic void handleMessage(Message msg) {//这里的话如果接受到信息码是123if(msg.what == 123){//设置进度条的当前值pd2.setProgress(progressStart);}//如果当前大于或等于进度条的最大值,调用dismiss()方法关闭对话框if(progressStart >= MAXVALUE){pd2.dismiss();}}};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mContext = MainActivity.this;bindViews();}private void bindViews() {btn_one = (Button) findViewById(R.id.btn_one);btn_two = (Button) findViewById(R.id.btn_two);btn_three = (Button) findViewById(R.id.btn_three);btn_one.setOnClickListener(this);btn_two.setOnClickListener(this);btn_three.setOnClickListener(this);}@Overridepublic void onClick(View v) {switch (v.getId()){case R.id.btn_one://这里的话参数依次为,上下文,标题,内容,是否显示进度,是否可以用取消按钮关闭ProgressDialog.show(MainActivity.this, "资源加载中", "资源加载中,请稍后...",false,true);break;case R.id.btn_two:pd1 = new ProgressDialog(mContext);//依次设置标题,内容,是否用取消按钮关闭,是否显示进度pd1.setTitle("软件更新中");pd1.setMessage("软件正在更新中,请稍后...");pd1.setCancelable(true);//这里是设置进度条的风格,HORIZONTAL是水平进度条,SPINNER是圆形进度条pd1.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);pd1.setIndeterminate(true);//调用show()方法将ProgressDialog显示出来pd1.show();break;case R.id.btn_three://初始化属性progressStart = 0;add = 0;//依次设置一些属性pd2 = new ProgressDialog(MainActivity.this);pd2.setMax(MAXVALUE);pd2.setTitle("文件读取中");pd2.setMessage("文件加载中,请稍后...");//这里设置为不可以通过按取消按钮关闭进度条pd2.setCancelable(false);pd2.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);//这里设置的是是否显示进度,设为false才是显示的哦!pd2.setIndeterminate(false);pd2.show();//这里的话新建一个线程,重写run()方法,new Thread(){public void run(){while(progressStart < MAXVALUE){//这里的算法是决定进度条变化的,可以按需要写progressStart = 2 * usetime() ;//把信息码发送给handle让更新界面hand.sendEmptyMessage(123);}}}.start();break;}}//这里设置一个耗时的方法:private int usetime() {add++;try{Thread.sleep(100);}catch (InterruptedException e) {e.printStackTrace();}return add;}
}

代码比较简单,而关于Progress的东西我们已经在前面学习过了,这里就不啰嗦了~


2.DatePickerDialog(日期选择对话框)与TimePickerDialog(时间选择对话框)

先要说明一点: Date/TimePickerDialog只是供用户来选择日期时间,对于android系统的系统时间, 日期没有任何影响,google暂时没有公布系统日期时间设置的API, 如果要在app中设置的话,要重新编译android的系统源码,非常麻烦!

他们两个的构造方法非常相似: DatePickerDialog(上下文;DatePickerDialog.OnDateSetListener()监听器;年;月;日)
TimePickerDialog(上下文;TimePickerDialog.OnTimeSetListener()监听器;小时,分钟,是否采用24小时制)

代码示例

运行效果图

关键实现代码

MainActivity.java

public class MainActivity extends AppCompatActivity implements View.OnClickListener{private Button btn_date;private Button btn_time;private String result = "";@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);bindViews();}private void bindViews() {btn_date = (Button) findViewById(R.id.btn_date);btn_time = (Button) findViewById(R.id.btn_time);btn_date.setOnClickListener(this);btn_time.setOnClickListener(this);}@Overridepublic void onClick(View v) {result = "";switch (v.getId()){case R.id.btn_date:Calendar cale1 = Calendar.getInstance();new DatePickerDialog(MainActivity.this,new DatePickerDialog.OnDateSetListener() {@Overridepublic void onDateSet(DatePicker view, int year, int monthOfYear,int dayOfMonth) {//这里获取到的月份需要加上1哦~result += "你选择的是"+year+"年"+(monthOfYear+1)+"月"+dayOfMonth+"日";Toast.makeText(getApplicationContext(), result, Toast.LENGTH_SHORT).show();}},cale1.get(Calendar.YEAR),cale1.get(Calendar.MONTH),cale1.get(Calendar.DAY_OF_MONTH)).show();break;case R.id.btn_time:Calendar cale2 = Calendar.getInstance();new TimePickerDialog(MainActivity.this, new TimePickerDialog.OnTimeSetListener() {@Overridepublic void onTimeSet(TimePicker view, int hourOfDay, int minute) {result = "";result += "您选择的时间是:"+hourOfDay+"时"+minute+"分";Toast.makeText(getApplicationContext(), result, Toast.LENGTH_SHORT).show();}}, cale2.get(Calendar.HOUR_OF_DAY), cale2.get(Calendar.MINUTE), true).show();break;}}
}

代码同样很简单,就不解释了~


3.代码下载:

DialogDemo.zip

DialogDemo1.zip


本节小结:

好的,本节介绍了三个常用的Dialog,相比起以前的4.x的版本,5.0的这些原生控件,
显然要好看得多~就说这么多,谢谢~

关注Android系列教程上篇

关注更多文章

http://www.lbrq.cn/news/2386909.html

相关文章:

  • 企业网站建设需要什么搜索引擎优化排名seo
  • 免费建网站软件下载南昌搜索引擎优化
  • 在百度上做网站怎么做百度排名规则
  • 烟台市建设工程质量检测网站怎么开网站
  • 专业网站建设哪个好短网址生成网站
  • 建设网站的工具佛山优化推广
  • 马蜂窝旅游网站怎么做百度资源搜索平台
  • 北京网站建设模板下载百度人工客服在哪里找
  • 做网站教材合肥网络优化公司有几家
  • 广州市建设工程交易服务中心网站关键词热度查询工具
  • 个人网站赚广告费网络稿件投稿平台
  • 佛山企业网站开发公司白杨seo
  • 青海公司网站建设哪家快网上企业推广
  • 德阳网站优化网站建设开发公司
  • 百度免费域名常德seo
  • 公司网站建设ppt上海网络推广培训机构
  • 东莞大型网站建设公司百度收录提交入口网址
  • 辽宁seo推广软件seo外包公司兴田德润
  • 广州网站建设招标职业培训热门行业
  • ui设计手机app页面尺寸福清市百度seo
  • 漯河网站建设e微信公众号运营推广方案
  • 网络直播网站建设广西seo
  • 网站做蜘蛛池有用吗天津百度推广排名优化
  • 知企业网站怎么打不开seo优化专员招聘
  • 网站栏目划分苏州手机关键词优化
  • excel网站链接怎么做seo网站推广经理
  • 东莞哪家做网站好发布软文是什么意思
  • 九龙坡做网站广告软文范例大全100
  • 株洲芦淞区疫情最新情况网站优化软件哪个好
  • 只有做推广才能搜索到网站吗淘宝推广费用多少钱一天
  • 深入理解Java中的Map.Entry接口
  • unity VR linerenderer的线会被UI盖住
  • 自增主键为什么不是连续的?
  • 文心一言4.5开源模型测评:ERNIE-4.5-0.3B超轻量模型部署指南
  • 微信小程序进度条cavans
  • LeetCode--45.跳跃游戏 II