练习:点击Button获取安卓系统当前时间,并转换日期格式
安卓系统的初始日期时间设置格式为:
我们老师给的题目便是将日期格式改成 “2020年-05月-06日 14:00:00”,实现后如下图:
实现步骤如下:
第一:在activity_main.xml布局文件中添加一个Button
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="Button"
android:textSize="40sp" />
</LinearLayout>
第二:在MainActivity.java中添加代码:实现Button监听事件、转换格式和获取时间
public class MainActivity extends AppCompatActivity implements Button.OnClickListener {
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn=findViewById(R.id.button3);
btn.setOnClickListener(this);
}
@Override
public void onClick(View v) {
Date d =new Date();
//btn.setText(d.toString()); //不转换格式
btn.setText(DateFormat.format("yyyy年MM月dd日,kk:mm:ss",d.getTime())); //转换格式
}
}
拓展:获取系统时间的其他方法
- 在activity_main.xml布局文件添加3个TextView 设置id
- 在MainActivity添加代码如下
//声明TextView
TextView tv1 = findViewById(R.id.tv1);
TextView tv2 = findViewById(R.id.tv2);
TextView tv3 = findViewById(R.id.tv3);
//第一种方法 SimpleDateFormat
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
Date date = new Date();
tv1.setText(simpleDateFormat.format(date));
//第二种方法 Calendar
Calendar calendar = Calendar.getInstance();
int year =calendar.get(Calendar.YEAR);
int month =calendar.get(Calendar.MONTH)+1;
int day =calendar.get(Calendar.DATE);
int hour =calendar.get(Calendar.HOUR_OF_DAY);
int min =calendar.get(Calendar.MINUTE);
int sec =calendar.get(Calendar.SECOND);
tv2.setText(year+"年"+month+"月"+day+"日"+" "+hour+":"+min+":"+sec);
//第三种方法 Time
Time time = new Time();
time.setToNow(); //获取系统当前时间
int year3 =time.year;
int month3=time.month+1;
int day3 = time.monthDay;
int hour3 = time.hour;
int min3 = time.minute;
int sec3=time.minute;
tv3.setText(year3+"年"+month3+"月"+day3+"日"+" "+hour3+":"+min3+":"+sec3);
3.实现后的界面
拓展部分学习来源网页