Android之对话框AlertDialog及其子类的使用(二)
来源:互联网 发布:制作手写的软件 编辑:程序博客网 时间:2024/04/23 14:14
效果图如下:
简单的写了个对话框的代码,以便以后复习,那样也方便
activity_main:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" ><Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="文本对话框" android:layout_gravity="center_horizontal"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="简单文本对话框" android:onClick="myBtn2" android:layout_gravity="center_horizontal"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="单选对话框" android:onClick="myBtn3" android:layout_gravity="center_horizontal"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="多选对话框" android:onClick="myBtn4" android:layout_gravity="center_horizontal"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="适配器对话框" android:onClick="myBtn5" android:layout_gravity="center_horizontal"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="自定义View对话框" android:onClick="myBtn6" android:layout_gravity="center_horizontal"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="日期选择器对话框" android:onClick="myBtn7" android:layout_gravity="center_horizontal"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="时间选择器对话框" android:onClick="myBtn8" android:layout_gravity="center_horizontal"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="进度条对话框" android:onClick="myBtn9" android:layout_gravity="center_horizontal"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="popupWindow对话框" android:onClick="myBtn10" android:layout_gravity="center_horizontal"/></LinearLayout>
MainActivity:
package com.example.dialogapp;import java.util.Calendar;import android.app.Activity;import android.app.AlertDialog;import android.app.DatePickerDialog;import android.app.DatePickerDialog.OnDateSetListener;import android.app.ProgressDialog;import android.app.TimePickerDialog;import android.app.TimePickerDialog.OnTimeSetListener;import android.content.DialogInterface;import android.content.DialogInterface.OnClickListener;import android.content.DialogInterface.OnMultiChoiceClickListener;import android.os.Bundle;import android.view.Gravity;import android.view.MotionEvent;import android.view.View;import android.view.View.OnTouchListener;import android.view.Window;import android.view.WindowManager;import android.widget.DatePicker;import android.widget.ImageView;import android.widget.PopupWindow;import android.widget.TimePicker;import android.widget.Toast;public class MainActivity extends Activity {private PopupWindow pw;//popuWindowpublic void myBtn10(View view){////if(pw!=null&&pw.isShowing()){pw.dismiss();}else{ImageView iv=new ImageView(this);iv.setImageResource(R.drawable.ic_launcher);iv.setOnTouchListener(new OnTouchListener() {@Overridepublic boolean onTouch(View v, MotionEvent event) {if(pw!=null&&pw.isShowing())pw.dismiss();return false;}});pw=new PopupWindow(iv,200,200);//pw.showAtLocation(view, Gravity.CENTER, 0, 0);//pw.showAsDropDown(view);}}private int myear,mmonth,mday;private int mhour,mminute;public void myBtn9(View view){/*ProgressDialog dialog=ProgressDialog.show(this, "", "",true,false);dialog.cancel();*///dialog.dismiss();//ProgressDialog dialog=new ProgressDialog(this);dialog.setTitle("进度条对话框");dialog.setMessage("zhengzai...");dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);//dialog.setIndeterminate(true);dialog.show();dialog.setProgress(50);}public void myBtn8(View view){Calendar c=Calendar.getInstance();mhour=c.get(Calendar.HOUR_OF_DAY);mminute=c.get(Calendar.MINUTE);TimePickerDialog dialog=new TimePickerDialog(this, new OnTimeSetListener() {@Overridepublic void onTimeSet(TimePicker view, int hourOfDay, int minute) {Toast.makeText(MainActivity.this, "时间为:"+mhour+"分钟为:"+mminute, 0).show();}}, mhour, mminute, true);dialog.show();}public void myBtn7(View view){//用日历来设置时间Calendar c=Calendar.getInstance();myear=c.get(Calendar.YEAR);mmonth=c.get(Calendar.MONTH);mday=c.get(Calendar.DAY_OF_MONTH);DatePickerDialog dialog=new DatePickerDialog(this, new OnDateSetListener() {@Overridepublic void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {Toast.makeText(MainActivity.this, "时间为:"+myear+"-"+(mmonth+1)+"-"+mday, 0).show();}}, myear, mmonth, mday);dialog.show();}public void myBtn5(View v){new AlertDialog.Builder(this).setTitle("适配器对话框");}public void myBtn6(View view){View v=getLayoutInflater().inflate(R.layout.activity_myview, null);new AlertDialog.Builder(this).setTitle("自定义View对话框").setView(v).create().show();}private int index;private String[] msg={"红色","蓝色","黄色","绿色"};private int[] colors={R.color.red,R.color.blue,R.color.yellow,R.color.green};public void myBtn2(View v){new AlertDialog.Builder(this).setTitle("简单文本对话框").setIcon(R.drawable.ic_launcher).setItems(msg, new OnClickListener() {public void onClick(DialogInterface dialog, int which) {getWindow().setBackgroundDrawableResource(colors[which]);}}).create().show();}public void myBtn3(View v){new AlertDialog.Builder(this).setTitle("单选对话框").setIcon(R.drawable.ic_launcher).setSingleChoiceItems(msg, 1, new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {//getWindow().setBackgroundDrawableResource(R.color.blue);index=which;}}).setPositiveButton("确定", new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {getWindow().setBackgroundDrawableResource(colors[index]);}}).create().show();}public void myBtn4(View v){new AlertDialog.Builder(this).setTitle("多选对话框").setIcon(R.drawable.ic_launcher).setMultiChoiceItems(msg, new boolean[]{false,false,false,false},new OnMultiChoiceClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which, boolean isChecked) {if(isChecked){}else{}}}).create().show();}@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_NO_TITLE);getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);setContentView(R.layout.activity_main);}}
自定义对话框的布局activity_myview:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/a1" android:layout_gravity="center_horizontal"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="还能不能愉快的玩耍了" android:textColor="#33cc33" android:textSize="25sp" android:layout_gravity="center_horizontal"/> <RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="能" android:textSize="20sp" android:layout_alignParentLeft="true" android:layout_marginLeft="20dp" android:background="@drawable/btn_selector" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="20sp" android:text="不能" android:layout_alignParentRight="true" android:layout_marginRight="20dp" android:background="@drawable/btn_selector"/> </RelativeLayout></LinearLayout>
点击打开链接可以下载代码
0 0
- Android之对话框AlertDialog及其子类的使用(二)
- Android之对话框AlertDialog及其子类的介绍(一)
- 【Android】AlertDialog及其子类
- Android之AlertDialog(弹出式对话框)的使用
- Android之ProgressBar及其子类SeekBar和RatingBar的使用(二)
- 【Android】对话框AlertDialog的使用(一)
- 【Android 开发】:UI控件之 AlertDialog 对话框控件的的使用(二)
- Android中的AlertDialog使用示例二(普通选项对话框)
- Android开发基础之AlertDialog的列表对话框的使用
- Android的对话框(AlertDialog)
- android学习之使用AlertDialog创建对话框
- Androidの自定义对话框AlertDialog(二)
- Android对话框之AlertDialog
- android之AlertDialog对话框
- Android之AlertDialog对话框
- Android之使用AlertDialog类和AlertDialog.Builder类创建带取消,确定,中立的对话框
- Android的AdapterView及其子类简介-android学习之旅(二十三)
- Android基础之AlertDialog(对话框)的学习
- Android碎片化与兼容性问题的元凶
- Git标签管理
- Linux中启动和停止jar包的运行
- UCOS2_STM32F1移植详细过程(四)
- Android Button自动触发点击事件
- Android之对话框AlertDialog及其子类的使用(二)
- maven向本地仓库导入官方仓库没有的jar包
- word 字符串参量过长 解决
- 双向链表的建立
- H.264视频在android手机端的解码与播放(转)
- 三消模块出现随机的办法
- ListView具有多种item布局——实现微信对话列
- ARM Linux 3.x的设备树(Device Tree)
- Linux 网络配置