public class MainActivity extends AppCompatActivity {
Handler handler;
ProgressDialog dialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// handler=new Handler(){
// @Override
// public void handleMessage(Message msg) {
// super.handleMessage(msg);
// if(msg.what==110){
// int progress = msg.arg1;
// dialog.setProgress(progress);
// if(progress==100){
// dialog.dismiss();//关闭进度框
// }
// }
// }
// };
handler=new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
if(msg.what==110){
int arg1 = msg.arg1;
dialog.setProgress(arg1);
if(arg1==100){
dialog.dismiss();
}
}
}
};
}
public void click(View view){
switch (view.getId()){
case R.id.btn1://弹出进度框
dialog=new ProgressDialog(MainActivity.this);
dialog.setProgress(0);//设置初始进度
dialog.setMax(100);//设置最大进度值
dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);//设置进度框为水平状态
dialog.show();//显示进度框
new Thread(new Runnable() {
@Override
public void run() {
for (int i=0;i<=100;i+=10){
try {
Thread.sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
// Message message=Message.obtain();
// message.what=110;
// message.arg1=i;
// handler.sendMessage(message);
Message obtain = Message.obtain();
obtain.what=110;
obtain.arg1=i;
handler.sendMessage(obtain);
}
}
}).start();
break;
case R.id.btn2://弹出日期选择框
Calendar calendar=Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DAY_OF_MONTH);
DatePickerDialog dateDialog=new DatePickerDialog(MainActivity.this, new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
Toast.makeText(MainActivity.this,year+"-"+(month+1)+"-"+dayOfMonth,Toast.LENGTH_SHORT).show();
}
},year,month,day);
dateDialog.show();
break;
case R.id.btn4://弹出时间选择框
Calendar calendar2=Calendar.getInstance();
int hour = calendar2.get(Calendar.HOUR_OF_DAY);
int minute = calendar2.get(Calendar.MINUTE);
TimePickerDialog timeDialog=new TimePickerDialog(MainActivity.this, new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
Toast.makeText(MainActivity.this,hourOfDay+":"+minute,Toast.LENGTH_SHORT).show();
}
},hour,minute,true);
timeDialog.show();
break;
case R.id.btn3://弹出自定义对话框
final AlertDialog.Builder dialog=new AlertDialog.Builder(MainActivity.this);
View inflate = View.inflate(MainActivity.this, R.layout.login, null);
final EditText et_anme=(EditText) inflate.findViewById(R.id.et_name);
final EditText et_pass=(EditText) inflate.findViewById(R.id.et_pass);
Button btn=(Button) inflate.findViewById(R.id.btnLogin);
final AlertDialog dialog2=dialog.create();
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this,et_anme.getText().toString()+","+et_pass.getText().toString(),Toast.LENGTH_SHORT).show();
dialog2.dismiss();
}
});
dialog2.setView(inflate);
dialog2.show();
break;
}
}
}
xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context="org.frxm.day01_dialog.MainActivity">
<Button
android:id="@+id/btn1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="进度框"
android:onClick="click"
/>
<Button
android:id="@+id/btn2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="日期选择框"
android:onClick="click"
/>
<Button
android:id="@+id/btn4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="时间选择框"
android:onClick="click"
/>
<Button
android:id="@+id/btn3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="自定义对话框"
android:onClick="click"
/>
</LinearLayout>
item
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<EditText
android:id="@+id/et_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入用户名"
/>
<EditText
android:id="@+id/et_pass"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:hint="请输入密码"
/>
<Button
android:id="@+id/btnLogin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="登录"
/>
</LinearLayout>