ProgressBar
java文件:
package ytu.it.homework3;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.widget.Button;
import android.widget.ProgressBar;
public class progress extends AppCompatActivity {
private ProgressBar pg;
private Button btn,btnPg1,btnPg2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_progress);
pg = (ProgressBar) findViewById(R.id.pro1);
btn = (Button) findViewById(R.id.btn_start);
btn.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
handler.sendEmptyMessage(0);
}
});
btnPg1 = (Button)findViewById(R.id.btn_pgdlg1);
btnPg2 = (Button) findViewById(R.id.btn_pgdlg2);
btnPg2.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
final ProgressDialog progressDialog = new ProgressDialog(progress.this);
progressDialog.setTitle("提示");
progressDialog.setMessage("等待");
progressDialog.setButton(DialogInterface.BUTTON_POSITIVE, "确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
});
progressDialog.show();
new Thread(){
@Override
public void run() {
super.run();
try {
sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
progressDialog.dismiss();
}
}.start();
}
});
btnPg1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final ProgressDialog progressDialog = new ProgressDialog(progress.this);
progressDialog.setTitle("提示");
progressDialog.setMessage("等待");
progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
progressDialog.show();
new Thread(){
@Override
public void run() {
super.run();
while (progressDialog.getProgress()<100){
progressDialog.setProgress(progressDialog.getProgress()+10);
try{
sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
};
}
});
}
Handler handler = new Handler(){
@Override
public void handleMessage(@NonNull Message msg) {
super.handleMessage(msg);
if(pg.getProgress()<100){
pg.setProgress(pg.getProgress()+10);
handler.postDelayed(runnable,1000);
}else{
btn.setText("加载完成");
}
}
};
Runnable runnable = new Runnable() {
@Override
public void run() {
handler.sendEmptyMessage(0);
}
};
}
xml:
<?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=".progress"
android:orientation="vertical"
android:padding="10dp">
<ProgressBar
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
style="@style/pgstyle"/>
<ProgressBar
android:id="@+id/pro1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
style="@android:style/Widget.ProgressBar.Horizontal"
android:progress="0"
android:secondaryProgress="50"
/>
<ProgressBar
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:indeterminateDrawable="@drawable/progress"
/>
<Button
android:id="@+id/btn_start"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="模拟进度条"
/>
<Button
android:layout_marginTop="5dp"
android:id="@+id/btn_pgdlg1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="滚动进度条"
/>
<Button
android:layout_marginTop="5dp"
android:id="@+id/btn_pgdlg2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="进度条对话框"
/>
</LinearLayout>
calendar
java
package ytu.it.homework3;
import androidx.appcompat.app.AppCompatActivity;
import android.app.DatePickerDialog;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.TextView;
import java.util.Calendar;
public class clock extends AppCompatActivity {
private DatePicker datePicker;
private TextView dp_text;
private Button btn_dp;
private int year,month,day;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_clock);
//初始化组件
datePicker = (DatePicker) findViewById(R.id.dp1);
dp_text = (TextView) findViewById(R.id.txt_dp);
btn_dp = (Button) findViewById(R.id.btn_dp);
final Calendar cld = Calendar.getInstance();
year = cld.get(Calendar.YEAR);
month = cld.get(Calendar.MONTH);
day = cld.get(Calendar.DAY_OF_MONTH);
datePicker.init(year, month, day, new DatePicker.OnDateChangedListener() {
@Override
public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
clock.this.year = year;
clock.this.month = monthOfYear;
clock.this.day = dayOfMonth;
dp_text.setText(year+"年"+(monthOfYear+1)+"月"+dayOfMonth+"日");
}
});
btn_dp.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
DatePickerDialog datePickerDialog = new DatePickerDialog(clock.this);
datePickerDialog.setTitle("请选择日期");
datePickerDialog.setOnDateSetListener(new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
btn_dp.setText(year+"年"+(month+1)+"月"+dayOfMonth+"日");
}
});
datePickerDialog.show();
}
});
}
}
xml:
<?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=".clock"
android:orientation="vertical"
android:padding="10dp"
>
<DatePicker
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/dp1"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/txt_dp"
android:textColor="#6bc6dd"
android:layout_marginTop="10dp"
/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/btn_dp"
android:text="日期对话框"
/>
</LinearLayout>