【Android】Android在AlertDialog使用大全

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);

}

}

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

时间: 2024-10-10 02:06:00

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

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

我们知道,在很多时候,我们都不用Android内置的一些控件,而是自己自定义一些自己想要的控件,这样显得界面更美观. 今天主要是讲自定义AlertDialog和popupWindow的使用,在很多需求中,我们往往需要这样一个功能,就是点击一个按钮或者其它控件,弹出一个对话框,让用户可以在这个对话框中做一些事,比如输入.选择.提示.....等等,那么,这个弹出对话框的功能我们都知道可以用popupWindow和AlertDialog实现,的却,popupWindow被称为万能的,因为它的布局都是我

Android简单例子——AlertDialog

最近学习了一段时间的Android,在网上找了些小的Demo,自己模拟这做了下,首先谢谢那些提供例子的朋友 今天主要学习的是简单的Dialog的使用(实现退出对话框)和自定义对话框 1.实现退出对话框 普通模式的对话框使用比较简单,主要是设置对话框标题.设置对话框内容.设置对话框中的按钮,以及增加监听事件,主要代码如下 //普通样式的对话框 btn2 = (Button) findViewById(R.id.btn2); btn2.setOnClickListener(new OnClickLi

Android进阶之AlertDialog自定义

AlertDialog的自定义方式有很多种,这里介绍两种. 第一种是比较简单的,只自定义内容. 在AlertDialog使用详解中,非常详细的介绍了以下六种使用方法. 一.简单的AlertDialog(只显示一段简单的信息,比如about us) 二.带按钮的AlertDialog(显示提示信息,让用户操作,比如exit时的警告框) 三.类似ListView的AlertDialog(展示内容,比如某人的一些注册信息) 四.类似RadioButton的AlertDialog(让用户选择,单选) 五

[转]Android有趣的全透明效果--Activity及Dialog的全透明(附android系统自带图标大全

原文:http://blog.csdn.net/sodino/article/details/5822147 1.Activity全透明 同学zzm给了这个有趣的代码,现在公布出来. 先在res/values下建colors.xml文件,写入: <? xml   version = "1.0"   encoding = "UTF-8" ?>    < resources >        < color   name = "t

android:常用的AlertDialog对话框及自定义对话框

常用的Dialog有确认对话框,单选按钮对话框,多选按钮对话框,复选按钮对话框另外还有自定义的对话框 AlertDialog的常用方法 setTitle:为对话框设置标题 setMessage:为对话框设置内容 setIcon:为对话框设置图标 setItems设置对话框要显示的list setMultiChoiceItems:一般用于复选框显示 setSingleChoiceItem:,设置单选按钮 setNeutralButton:普通按钮 setPositiveButton:添加确定按钮

android中的AlertDialog详细概述

android的AlertDialog详解 AlertDialog的构造方法全部是Protected的,所以不能直接通过new一个AlertDialog来创建出一个AlertDialog. 要创建一个AlertDialog,就要用到AlertDialog.Builder中的create()方法. 使用AlertDialog.Builder创建对话框需要了解以下几个方法: setTitle :为对话框设置标题 setIcon :为对话框设置图标 setMessage:为对话框设置内容 setVie

Android有趣的全透明效果--Activity及Dialog的全透明(附android系统自带图标大全)[转]

原文地址:http://blog.csdn.net/sodino/article/details/5822147 1.Activity全透明 同学zzm给了这个有趣的代码,现在公布出来. 先在res/values下建colors.xml文件,写入: <? xml version = "1.0" encoding = "UTF-8" ?> < resources > < color name = "transparent&quo

[Android]Android Tutorial

Android, an open source operating system for mobile devices (Smartphone and tablet), led by Google. The Android SDK provides a set of tools and APIs to develop Android applications, using Java. So, if you know Java, Android programming is easy :) In

从零开始学android&lt;android事件的处理方式.二十四.&gt;

在android中一共有 多种事件,每种事件都有自己相对应的处理机制 如以下几种 1 单击事件 View.OnClickListener public abstract void onClick (View v) 单击组件时触发 2 单击事件 View.OnLongClickListener public abstract boolean onLongClick (View v) 长按组件时触发 3 键盘事件 View.OnKeyListener public abstract boolean

[android] android下junit测试框架配置

我们的业务代码一般是放在一个新的包下面,这个业务类不能够通过右键run as java application,因为android项目只能运行在手机上的dalvak虚拟机里面 新建一个包,里面写测试类,测试类需要继承AndroidTestCase类,写测试方法,需要throws exception抛出异常给测试框架,测试方法里面一般new出需测试的类,调用它的方法,然后断言结果,assertEquals(预估, 实际结果) 在outline视窗 (window=>show view=>outl