.xml

<?xml version="1.0" encoding="utf-8"?>
<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:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context="com.hanqi.application3.UIActivity2"android:orientation="vertical"><Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="长按触发上下文菜单"android:id="@+id/bt_changan"/><ProgressBarandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:id="@+id/pb_1"android:visibility="gone"/><ProgressBarandroid:layout_width="match_parent"android:layout_height="wrap_content"style="?android:attr/progressBarStyleHorizontal"android:max="100"android:progress="50"android:secondaryProgress="70"android:id="@+id/pb_2"android:visibility="gone"/><!--progress  当前进度--><!--<ProgressBarandroid:layout_width="wrap_content"android:layout_height="wrap_content"style="@android:style/Widget.ProgressBar.Small"/><ProgressBarandroid:layout_width="wrap_content"android:layout_height="wrap_content"style="@android:style/Widget.ProgressBar.Large"/><ProgressBarandroid:layout_width="wrap_content"android:layout_height="wrap_content"style="@android:style/Widget.ProgressBar.Inverse"/><ProgressBarandroid:layout_width="wrap_content"android:layout_height="wrap_content"style="@android:style/Widget.ProgressBar.Large.Inverse"/>
--><SeekBarandroid:layout_width="match_parent"android:layout_height="wrap_content"android:max="100"android:progress="20"android:secondaryProgress="40"android:id="@+id/sb_1"/><!--<RatingBarandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:numStars="6"android:rating="3"android:isIndicator="true"/>numStars 设置几颗星isIndicator 是否不准修改--><Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="点击触发弹出普通对话框"android:onClick="pt_onClick"/><Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="点击触发弹出单选对话框"android:onClick="dx_onClick"/><Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="点击触发弹出多选对话框"android:onClick="ddx_onClick"/><Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="点击触发弹出自定义对话框"android:onClick="zdy_onClick"/><Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="点击触发弹出进度条对话框"android:onClick="jdt_onClick"/><Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="点击触发弹出水平进度条对话框"android:onClick="jdt1_onClick"/><Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="点击触发日期对话框"android:onClick="rq_onClick"/>ri<Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="点击触发时间对话框"android:onClick="sj_onClick"/>
</LinearLayout>

.java

package com.hanqi.application3;import android.app.Activity;
import android.app.AlertDialog;
import android.app.DatePickerDialog;
import android.app.ProgressDialog;
import android.app.TimePickerDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.SubMenu;
import android.view.View;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.ProgressBar;
import android.widget.SeekBar;
import android.widget.TimePicker;
import android.widget.Toast;import java.util.Calendar;public class UIActivity2 extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_ui2);Button bt_changan=(Button)findViewById(R.id.bt_changan);// 创建上下文菜单监听bt_changan.setOnCreateContextMenuListener(this);//bt_changan.setOnContextClickListener();创建监听//进度条//finalfinal ProgressBar pb_1 = (ProgressBar)findViewById(R.id.pb_1);final ProgressBar pb_2 = (ProgressBar)findViewById(R.id.pb_2);SeekBar sb_1=(SeekBar)findViewById(R.id.sb_1);sb_1.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {@Override//进度被改变public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {pb_2.setProgress(progress);}//开始拖动
            @Overridepublic void onStartTrackingTouch(SeekBar seekBar) {}//结束拖动
            @Overridepublic void onStopTrackingTouch(SeekBar seekBar) {pb_2.setProgress(seekBar.getProgress());if(seekBar.getProgress() == seekBar.getMax()){//设置不可见INVISIBLE  占有空间,但是隐藏//GONE 直接取消
                    pb_1.setVisibility(View.GONE);}else{//可见VISIBLE
                    pb_1.setVisibility(View.VISIBLE);}}});}@Overridepublic void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {menu.add(0, 1, 0, "添加");menu.add(0, 2, 1, "修改");menu.add(0, 3, 2, "删除");SubMenu m = menu.addSubMenu(0, 4, 3, "子菜单");m.add(0,41,0,"子菜单项1");m.add(0,42,0,"子菜单项2");m.add(0,43,0,"子菜单项3");//        MenuInflater mi = getMenuInflater();
//        mi.inflate(R.menu.mymenu, menu);super.onCreateContextMenu(menu, v, menuInfo);}@Overridepublic boolean onContextItemSelected(MenuItem item) {switch (item.getItemId()){case R.id.it2:Toast.makeText(UIActivity2.this, "触发了添加1功能", Toast.LENGTH_SHORT).show();break;case R.id.it1:Toast.makeText(UIActivity2.this, "触发了删除1功能", Toast.LENGTH_SHORT).show();break;}return super.onContextItemSelected(item);}@Override//重写  创建选项菜单的方法public boolean onCreateOptionsMenu(Menu menu) {//添加菜单项//纯编码模式
//        menu.add(0,1,0,"添加");
//        menu.add(0,2,2,"删除");
//        menu.add(0,3,1,"修改");//加载菜单文件模方式//1.获取一个菜单加载器MenuInflater mi = getMenuInflater();mi.inflate(R.menu.mymenu, menu);return super.onCreateOptionsMenu(menu);}@Overridepublic boolean onOptionsItemSelected(MenuItem item) {//item.getTitle() 加载标题//Toast.makeText(UIActivity2.this, "选中的菜单项是"+item.getTitle(), Toast.LENGTH_SHORT).show();//根据菜单项的不同相应不同的功能//获取Item的idswitch (item.getItemId()){case 1:Toast.makeText(UIActivity2.this, "触发了添加功能", Toast.LENGTH_SHORT).show();break;case 2:Toast.makeText(UIActivity2.this, "触发了删除功能", Toast.LENGTH_SHORT).show();break;case 3:Toast.makeText(UIActivity2.this, "触发了修改功能", Toast.LENGTH_SHORT).show();break;case R.id.it1:Toast.makeText(UIActivity2.this, "触发了添加1功能", Toast.LENGTH_SHORT).show();break;case R.id.it2:Toast.makeText(UIActivity2.this, "触发了删除1功能", Toast.LENGTH_SHORT).show();break;}return super.onOptionsItemSelected(item);}public void pt_onClick(View v){
//        //构建一个普通对话框
//        //对话框的构建器
//        AlertDialog.Builder ab = new AlertDialog.Builder(this);
//        ab.setTitle("数据删除");
//        ab.setMessage("你确定要删除码?");
//        //负面按钮
//        ab.setNeutralButton("取消",null);
//        //正面按钮
//        ab.setPositiveButton("确定", new DialogInterface.OnClickListener() {
//            @Override
//            public void onClick(DialogInterface dialog, int which) {
//                Toast.makeText(UIActivity2.this, "删除成功", Toast.LENGTH_SHORT).show();
//            }
//        });
//
//        ab.show();//方法连调用new AlertDialog.Builder(this).setTitle("确认保存").setMessage("你真的要保存吗?").setNeutralButton("取消",null).setPositiveButton("保存",null).show();}public void dx_onClick(View v){final String[] str_color={"红","绿","黄","蓝"};new AlertDialog.Builder(this).setTitle("请选择颜色").setSingleChoiceItems(str_color, 0, new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {Toast.makeText(UIActivity2.this, "选中了"+str_color[which], Toast.LENGTH_SHORT).show();//移除//dialog.dismiss();
                    }}).setNeutralButton("确定",null).show();}public void ddx_onClick(View v){final String[] str_color={"红","绿","黄","蓝"};final boolean[] bl_xz = {true,false,false,true};new AlertDialog.Builder(this).setTitle("请选择颜色").setMultiChoiceItems(str_color, bl_xz, new DialogInterface.OnMultiChoiceClickListener() {@Override//是否选中isCheckedpublic void onClick(DialogInterface dialog, int which, boolean isChecked) {if (isChecked) {Toast.makeText(UIActivity2.this, str_color + "被选中", Toast.LENGTH_SHORT).show();} else {Toast.makeText(UIActivity2.this, str_color + "取消选中", Toast.LENGTH_SHORT).show();}}}).setNeutralButton("确定", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {//遍历for (boolean b : bl_xz) {Toast.makeText(UIActivity2.this, "值= " + b, Toast.LENGTH_SHORT).show();}}}).show();}public void zdy_onClick(View v){//1.获取加载器LayoutInflater lif = getLayoutInflater();//2.用加载器加载文件final View v_1 = lif.inflate(R.layout.loginlayout, null);new AlertDialog.Builder(this)//.setView(R.layout.loginlayout)
                .setView(v_1).setNeutralButton("取消", null).setPositiveButton("登陆", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {AlertDialog al = (AlertDialog) dialog;//处理数据
EditText et_username = (EditText) al.findViewById(R.id.et_username);Toast.makeText(UIActivity2.this, "用户名=" + et_username.getText(), Toast.LENGTH_SHORT).show();}}).show();}public void jdt_onClick(View v){final ProgressDialog pd = new  ProgressDialog(this);pd.setMessage("正在加载,请稍候...");pd.setCanceledOnTouchOutside(false);//     pd.setTitle("进度对话框");
            pd.show();//创建Thread实例重写run(),start()启动多线程//
        new Thread(){@Overridepublic void run() {super.run();try {Thread.sleep(3000);}catch (Exception e){}pd.dismiss();//关闭//子线程不能直接操作主线程UI线程//可以用Thread//runOnUiThreadrunOnUiThread(new Runnable() {@Overridepublic void run() {Toast.makeText(UIActivity2.this, "加载完成...", Toast.LENGTH_SHORT).show();}});}}.start();//多线程
}public void jdt1_onClick(View v){final ProgressDialog pd = new  ProgressDialog(this);pd.setCanceledOnTouchOutside(false);pd.setMessage("正在加载...");pd.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);pd.show();//创建Thread实例,实现Runnable接口 ),start()启动多线程new Thread(new Runnable() {@Overridepublic void run() {for (int i = 0; i <= pd.getMax();i++){try {Thread.sleep(100);}catch (Exception e){}pd.setProgress(i);}}}).start();}public void rq_onClick(View v){//获取当前日期//单例模式,设计模式的一种Calendar cc=  Calendar.getInstance();DatePickerDialog ddp = new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() {@Overridepublic void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {Toast.makeText(UIActivity2.this, year+"-"+(monthOfYear+1)+"-"+dayOfMonth, Toast.LENGTH_SHORT).show();}},cc.get(Calendar.YEAR),cc.get(Calendar.MONTH),cc.get(Calendar.DAY_OF_MONTH));ddp.show();}public void sj_onClick(View v){//获取当前日期//单例模式,设计模式的一种Calendar cc=  Calendar.getInstance();TimePickerDialog tpd = new TimePickerDialog(this, new TimePickerDialog.OnTimeSetListener() {@Overridepublic void onTimeSet(TimePicker view, int hourOfDay, int minute) {}},cc.get(Calendar.HOUR),cc.get(Calendar.MINUTE),true);tpd.show();}
}

转载于:https://www.cnblogs.com/cuikang/p/5357767.html

andorid 全部对话框相关推荐

  1. Android 显示 指纹/人脸 身份验证对话框

    1. 前言 为了增加用户的隐私和安全,需保护您的应用中的敏感信息或付费内容,一种方法是请求生物识别身份验证,例如使用人脸识别或指纹识别.本篇文章介绍了如何在您的应用中支持生物识别登录流程. 2. 声明 ...

  2. java中实现选择文件_Java 实现文件选择对话框及功能

    时间:2018-10-02 概述:文件选择器 Java实现文件选择器,就是大家熟悉的打开文件.选择文件的对话框,本例子分为两部分来进行,一个部分是选择器对话框构建部分,另一部分是文件过滤部分,用于过滤 ...

  3. android系统二次开发,Andorid系统二次开发界面

    Andorid系统二次开发界面 给大家介绍完外观,下面我们一起再来看下魅族MX的系统界面.本次魅族MX仍然采用的是Andorid操作系统,并且加入了二次开发界面.UI界面整体上保持了和M9的特色,不过 ...

  4. unigui中弹出对话框原窗体是没有了_最前线 | 微信对话框“搜一搜”功能上线,独辟蹊径的腾讯打着什么算盘?...

    更新界的"劳模"微信又出新花样了.9月9日,微信在对话框全量上线了搜一搜功能.简单来说,就是用户在微信对话过程中,如果遇到知识盲区,可以通过长按对话框文本,选择导航栏中的" ...

  5. vs如何设置对话框显示在最前面_【另存为】对话框的使用

    原文链接: No.21 [另存为]对话框的使用​mp.weixin.qq.com [另存为]对话框 [另存为]对话框我们也十分熟悉,一般用来保存文件到指定的路径.其实它和[打开]对话框除了标题文字不同 ...

  6. Andorid自定义attr的各种坑

    本文来自网易云社区 作者:孙有军 在开发Andorid应用程序中,经常会自定义View来实现各种各样炫酷的效果,在实现这吊炸天效果的同时,我们往往会定义很多attr属性,这样就可以在XML中配置我们想 ...

  7. Android对话框-下篇-之设置activity为Dialog

    有人希望做出来的应用程序是一个漂浮在手机主界面的东西,那么很 简单你只需要设置一下Activity的主题就可以了在AndroidManifest.xml 中定义Activity的 地方一句话:andr ...

  8. asp.net 2.0中的弹出对话框

    在asp.net 1.1中,要做1个弹出的对话框的话,一般是在服务端的代码中这样写: btnClick.Attributes.Add("onclick", "return ...

  9. 调用API弹出打印机属性对话框

    调用api弹出打印机属性对话框  Author:vitoriatang From:Internet .NET Framework封装了很多关于打印的对话框,比如说PrintDialog, PageSe ...

最新文章

  1. 大数的减法函数--c语言
  2. Keras搭建深度学习模型,指定使用GPU来进行模型的训练和测试
  3. orion的简单测试
  4. 未定义标识符 stringc/c++(20)_到 2024 年,阿斯顿·马丁汽车销量的 20%以上将是电动汽车...
  5. maven-compiler-plugin 找不到 rt.jar
  6. 1099: 角谷猜想(多实例测试)
  7. centos桌面系统使用记录
  8. 为什么机器学习很难学习因果关系?
  9. JAVASCRIPT 高级程序设计 第二版pdf
  10. 已知平面上两点坐标及半径,求过两点圆弧的圆心坐标
  11. vpay商城系统开发app
  12. Win7 安装.Net 4.7.2 失败
  13. 8 款浏览器兼容性测试工具介绍,需要的赶紧收藏吧!
  14. 数据库设计3个泛式和经验谈
  15. 关于pd.read_csv() 读数据的注意事项
  16. 801-分享“入选腾讯犀牛鸟精英营”心得
  17. 【Mysql】InnoDB 中 B+ 树索引的注意事项
  18. 斗图表情包爬虫(基于多线程)
  19. mapstruct java: Ambiguous mapping methods found for mapping collection element
  20. c basic library framework - simplec 2.0.0

热门文章

  1. 用html5的canvas画布绘制贝塞尔曲线
  2. [攻克存储] 掌握SDRAM/DDR的结构与寻址
  3. android开机自动运行程序
  4. Cesar竞赛平台项目中期总结
  5. Boost 编译链接
  6. Phpcms v9专题分类增加模板设置的方法
  7. PXE网络无人值守装机
  8. 在Flutter中嵌入Native组件的正确姿势
  9. 关于zipfile解压出现的字符编码问题
  10. Solr 3.5:配置mmseg4j同义词(已经配置好中文分词)