package com.ceac.deng;





import android.R.string;

import android.support.v7.app.ActionBarActivity;

import android.app.AlertDialog;

import android.app.AlertDialog.Builder;

import android.content.DialogInterface;

import android.os.Bundle;

import android.os.SystemClock;

import android.view.Menu;

import android.view.MenuItem;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.Chronometer;

import android.widget.Toast;

import android.widget.Chronometer.OnChronometerTickListener;









public class MainActivity extends ActionBarActivity {





private Chronometer chronometer;

private Button stopButton;

private Button startButton;



private Button button;

private Button button2;

private Button button3;

private Button button4;



    boolean[] checkedItems = new boolean[] {false, true, false, true, false, true};

    String[] items = new String[] {"植物大战僵尸", "愤慨的 小鸟", "泡泡龙", "开心农场", "QQ飞车", "超级玛丽"};



    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        

        findView();

        

        chronometer.setBase(SystemClock.elapsedRealtime());

//        chronometer.setFormat("已经用了多少时间:  %s");

        chronometer.start();

        

        chronometer.setOnChronometerTickListener(new OnChronometerTickListener() {



@Override

public void onChronometerTick(Chronometer chronometer) {

// TODO Auto-generated method stub

if (SystemClock.elapsedRealtime() - chronometer.getBase() >= 100000)

{

chronometer.stop();

}

}

});

        

        setListenner();

    }





    /**

     * findView

     */

    private void findView()

    {

    chronometer = (Chronometer) findViewById(R.id.chronometer1);

    stopButton = (Button) findViewById(R.id.stop);

    startButton = (Button) findViewById(R.id.start);

   

    button = (Button) findViewById(R.id.button1);

    button2 = (Button) findViewById(R.id.button2);

    button3 = (Button) findViewById(R.id.button3);

    button4 = (Button) findViewById(R.id.button4);

   

   

    }

    

    private void setListenner()

    {

    stopButton.setOnClickListener(new OnClickListener() {



@Override

public void onClick(View v) {

// TODO Auto-generated method stub

chronometer.stop();

System.out.println("stop chronometer....");

}

});

   

    startButton.setOnClickListener(new OnClickListener() {



@Override

public void onClick(View v) {

// TODO Auto-generated method stub

chronometer.setBase(SystemClock.elapsedRealtime());

chronometer.start();

System.out.println("start Chronometer....");

}

});

   

    button.setOnClickListener(new OnClickListener() {



@Override

public void onClick(View v) {





showAlertDialog();

}

});

   

    button2.setOnClickListener(new OnClickListener() {



@Override

public void onClick(View v) {

// TODO Auto-generated method stub

showListDialog();

}

});

   

    button3.setOnClickListener(new OnClickListener() {



@Override

public void onClick(View v) {

// TODO Auto-generated method stub

showSingleChoiceDialog();

}

});

   

    button4.setOnClickListener(new OnClickListener() {



@Override

public void onClick(View v) {

// TODO Auto-generated method stub

showMultiChoiceDialog();

}

});

   

   

    }

    

    /**

     * showDialog

     */

    private void showAlertDialog()

    {

// AlertDialog alertDialog = new AlertDialog.Builder(MainActivity.this).create();

// alertDialog.setIcon(R.drawable.ic_launcher);

// alertDialog.setTitle("系统提示");

// alertDialog.setMessage("带取消 、中立、确定button的对话框");

//// alertDialog.setButton(DialogInterface.BUTTON_NEGATIVE, "取消", listener);

    AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);

builder.setIcon(R.drawable.ic_launcher);

builder.setTitle("系统提示");

builder.setMessage("带取消 、中立、确定button的对话框");



//确定

builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {



@Override

public void onClick(DialogInterface dialog, int which) {

// TODO Auto-generated method stub

showToast("点击了确定的button");

}

});



//中立

builder.setNeutralButton("中立", new DialogInterface.OnClickListener() {



@Override

public void onClick(DialogInterface dialog, int which) {

// TODO Auto-generated method stub

showToast("点击了中立button");

}

});



//取消

builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {



@Override

public void onClick(DialogInterface dialog, int which) {

// TODO Auto-generated method stub

showToast("点击了取消button");

}

});



builder.show();


    }

    

    /**

     * 带列表的对话框

     */

    private void showListDialog()

    {

    final String[] items = new String[] {"跑步", "羽毛球", "足球"};

    AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);

    builder.setIcon(R.drawable.ic_launcher);

    builder.setTitle("请选择相应的运动项目");

    builder.setItems(items, new DialogInterface.OnClickListener() {



@Override

public void onClick(DialogInterface dialog, int which) {

// TODO Auto-generated method stub

showToast(items[which]);

}

});

    builder.show();


    }

    

    /**

     * 带有单选列表的和一个button的对话框

     */

    private void showSingleChoiceDialog()

    {

    final String[] items = new String[] {"标准模式", "静音模式", "会议模式", "飞行模式", "户外模式"};

    Builder builder = new AlertDialog.Builder(MainActivity.this);

    builder.setIcon(R.drawable.ic_launcher);

    builder.setTitle("请你选择须要的情景模式");

    builder.setSingleChoiceItems(items, 0, new DialogInterface.OnClickListener() {



@Override

public void onClick(DialogInterface dialog, int which) {

// TODO Auto-generated method stub

showToast("你选择了" + items[which]);

}

});

    builder.setPositiveButton("确定", null);

    builder.show();

    }

    

    /**

     * 带有多选列表项和一个确定button的列表对话框

     */

    private void showMultiChoiceDialog()

    {

//     final boolean[] checkedItems = new boolean[] {false, true, false, true, false};

//     String[] items = new String[] {"植物大战僵尸", "愤慨的 小鸟", "泡泡龙", "开心农场", "QQ飞车", "超级玛丽"};

   

    Builder builder = new AlertDialog.Builder(MainActivity.this);

    builder.setIcon(R.drawable.ic_launcher);

    builder.setTitle("请选择你喜欢的游戏");

    builder.setMultiChoiceItems(items, checkedItems, new DialogInterface.OnMultiChoiceClickListener() {



@Override

public void onClick(DialogInterface dialog, int which, boolean isChecked) {

// TODO Auto-generated method stub

checkedItems[which] = isChecked;

}

});

   

    builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {



@Override

public void onClick(DialogInterface dialog, int which) {

// TODO Auto-generated method stub

String result = "";

for (int i= 0; i < checkedItems.length; i++)

{

if (checkedItems[i])

{

result += items[i];

result += "  ";

}

}



if (!"".equals(result))

{

showToast(result);

}

}

});

   

    builder.show();

    }

    

    /**

     * 

     * @param str

     */

    private void showToast(String str)

    {

    Toast.makeText(MainActivity.this, str, Toast.LENGTH_LONG).show();

    }

    

    @Override

    public boolean onCreateOptionsMenu(Menu menu) {

        // Inflate the menu; this adds items to the action bar if it is present.

        getMenuInflater().inflate(R.menu.main, menu);

        return true;

    }





    @Override

    public boolean onOptionsItemSelected(MenuItem item) {

        // Handle action bar item clicks here. The action bar will

        // automatically handle clicks on the Home/Up button, so long

        // as you specify a parent activity in AndroidManifest.xml.

        int id = item.getItemId();

        if (id == R.id.action_settings) {

            return true;

        }

        return super.onOptionsItemSelected(item);

    }

}

版权声明:本文博客原创文章,博客,未经同意,不得转载。

【Android】Android在AlertDialog使用大全的更多相关文章

  1. Stack Overflow 排错翻译 - Closing AlertDialog.Builder in Android -Android环境中关闭AlertDialog.Builder

    Stack Overflow 排错翻译  - Closing AlertDialog.Builder in Android -Android环境中关闭AlertDialog.Builder 转自:ht ...

  2. Android中的AlertDialog使用示例五(自定义对话框)

    在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框,AlertDialog实现方法为建造者模式. ...

  3. Android中的AlertDialog使用示例三(单向选择确定对话框)

    在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框,AlertDialog实现方法为建造者模式. ...

  4. Android中的AlertDialog使用示例二(普通选项对话框)

    在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框,AlertDialog实现方法为建造者模式. ...

  5. Android中的AlertDialog使用示例一(警告对话框)

    在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框,AlertDialog实现方法为建造者模式. ...

  6. Android简单例子——AlertDialog

    最近学习了一段时间的Android,在网上找了些小的Demo,自己模拟这做了下,首先谢谢那些提供例子的朋友 今天主要学习的是简单的Dialog的使用(实现退出对话框)和自定义对话框 1.实现退出对话框 ...

  7. Android学习笔记--AlertDialog应用

    1. 自定义实现带图标的TextView IconTextView.java package com.evor.andtest; import android.content.Context; imp ...

  8. Android之自定义AlertDialog和PopupWindow实现(仿微信Dialog)

    我们知道,在很多时候,我们都不用Android内置的一些控件,而是自己自定义一些自己想要的控件,这样显得界面更美观. 今天主要是讲自定义AlertDialog和popupWindow的使用,在很多需求 ...

  9. android中的AlertDialog具体概述

    android的AlertDialog具体解释 AlertDialog的构造方法所有是Protected的.所以不能直接通过new一个AlertDialog来创建出一个AlertDialog. 要创建 ...

  10. Android 中的AlertDialog使用自定义布局

    Android使用指定的View开发弹窗功能 Android开发中进程会使用到我们的AlertDialog,但是比较可惜的是我们的Android原生的AlertDialog的效果又比较的简陋,这个时候 ...

随机推荐

  1. 【从翻译mos文章】rac数据库,HC_&lt;SID&gt;.dat其他文件Oracle_Home用例下。

    rac数据库.HC_<SID>.dat其他文件Oracle_Home用例下. 参考原始: RAC database HC_<SID>.dat is used by instan ...

  2. 玩转Web之Json(四)---json与(Object/List/Map)的相互转化

    在做web应用时,经常需要将json转化成Object/list/map或者将Object/List/map转化成json,通过简单封装可以在写代码是减轻很多负担.本文将给出json转化的一系列方法. ...

  3. ios pop 折叠动画

    今天写了一个很有趣的电影太,我们可以去githoub下载. 这部动画是高级写作,我参考了它.而凝视,我希望你能看的懂. 各种动画.事实上,一些不起眼的开始.我也只是摸索. 我希望有更多的交流.[   ...

  4. (转)mvn clean install 与 mvn install 的区别(为啥用clean)

    之前写代码的过程中曾经遇到过问题,用mvn install后,新改的内容不生效,一定要后来使用mvn clean install 才生效,由于之前没有做记录,以及记不清是什么情况下才会出现的问题,于是 ...

  5. Spark SQL源代码分析之核心流程

    /** Spark SQL源代码分析系列文章*/ 自从去年Spark Submit 2013 Michael Armbrust分享了他的Catalyst,到至今1年多了,Spark SQL的贡献者从几 ...

  6. win7开机直接进入系统系统桌面

    在开始搜索栏输入:netplwiz   选中admin用户(也就是你登录的用户名),然后在把上面的勾去掉,点应用,会提示输入用户名和密码,输二次,是一样的密码,如果没设密码,就不用输直接应用,确定就O ...

  7. Java线程学习笔记(一个)

    一个.正在创建的线程: 老掉牙的话题了.继承 java.lang.Thread父类或者实现Runnalbe接口.这里就提一句: class Thread implements Runnable Thr ...

  8. [原创].NET 业务框架开发实战之六 DAL的重构

    原文:[原创].NET 业务框架开发实战之六 DAL的重构 .NET 业务框架开发实战之六 DAL的重构 前言:其实这个系列还是之前的".NET 分布式架构开发实战 ",之所以改了 ...

  9. 将cocos2dx+lua创建的游戏port到windows phone

    在整个Port的过程中遇到的问题总结例如以下 1.一定要使用最新版本号的cocos2dx,原因大家看一下changelog就知道了,近期的cocos2dx版本号都是在修windows phone上的b ...

  10. 基于HTML5气3D仿真培训系统

    根据最近的上线HTML5的燃气3D培训仿真系统.曾经的老系统是採用基于C++和OpenGL的OpenSceneGraph引擎设计的,OSG引擎性能和渲染效果各方面还是不错的,但由于这次新产品需求要求能 ...