每天一点Android干货-时间与日期、进度条

时间:2023-12-30 10:02:50

时间控件TimePicker的使用方法

timePicker.setIs24HourView(true); //设置是否以24小时制显示

timePicker.getCurrentHour(); //获取当前时钟数

timePicker.getCurrentMinute(); //获取当前分钟数

监听器:OnTimeChangedListener:监听TimePicker控件,包含方法

public void onTimeChanged(TimePicker timePicker, int hourOfDay, int minute){}

DatePicker的使用方法

dataPicker.init(year, month, day, onDataChangedListener); //设置初始日期

datePicker.updateDate(2013, 4, 10);  //设置控件显示的日期

两种不同的时钟显示方式:AnologClock:模拟时钟、DigitalClock:数字时钟

(pt: point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用;)

Calendar:获取日期,car=Calendar.getInstance();

使用car.get()方法获取日期; //Calendar.YEAR、Calendar.MONTH、Calendar.DAY_OF_MONTH、Calendar.HOUR_OF_DAY、Calendar.MINUTE

DatePickerDialog:日期选择对话框

TimePickerDialog:时间选择对话框

——————————————————————————————————————————————————————————————————————

Android当中的进度条

垂直风格、水平风格

ProgressBar的两个子类:SeekBar、RatingBar

ProgressBar:

水平风格:Horizontal  小风格:Small  大风格:Large  反向风格:Inverse  小反向风格:Small.Inverse  大反向风格:Large.Inverse

设置方法:style="?android:attr/progressBarStyleLargeInverse"

ProgressBar的属性和方法:

progressBar.setMax();   // 进度条最大值:max 

progressBar.setProgress();  // 当前进度:progress  
progressBar.setSecondaryProgress(); // 次要进度的值:SecondaryProgress progressBar.isIndeterminate(); //判断是否是不确定的ProgressBar(转圈的为不确定) progressBar.incrementProgressBy(10); //设置进度增长的值 progressBar.incrementSecondaryProgressBy(); //设置第二进度条增长的值

标题栏中的ProgressBar:

//1.启用窗口特征,启用带进度和不带进度的进度条:
requestWindowFeature(Window.FEATURE_PROGRESS);
requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); //2.显示两种进度条:
setProgressBarVisibility(true);
setProgressBarIndeterminate(true);
setProgress(600);

对话框形式的进度条:ProgressDialog

prodialog = new ProgressDialog(MainActivity.this); //新建ProgressDialog对象
prodialog.setProgressStyle(ProgressStyle.STYLE_HORIZONTAL); //设置显示风格
prodialog.setTitle(); //设置标题
prodialog.setMessage(); //设置内容
prodialog.setIcon(); //设置图标
prodialog.show();

自定义ProgressBar样式:android:progressDrawable=""

SeekBar:进度条可拖动

  监听器:OnSeekBarChangeListener,包含的方法:

onProgressChanged(SeekBar seekBar, int progress, boolean fromUser);  //fromuser:这次的progress变化是不是用户引起的

  onStartTrackingTouch(SeekBar seekBar); //开始拖拽

  onStopTrackingTouch(SeekBar seekBar);  //停止拖拽

RatingBar:评分进度条 layout_width不能用"match_parent"

  RatingBar的属性:

  numStars:显示几颗星

  progress:当前等级

  stepSize:每次前进的格数

  监听器:OnRatingBarChangeListener,包含的方法:

onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser);