`

android simpleDialog简单对话框(方法有过时)

阅读更多
MainActivity.java

package com.simpleDialog;

import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup.LayoutParams;
import android.widget.Button;

public class MainActivity extends Activity implements OnClickListener {

	private Button btn_simple, btn_custom, btn_progress, btn_single, btn_multi;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);

		btn_simple = (Button) findViewById(R.id.btn_simple);
		btn_custom = (Button) findViewById(R.id.btn_custom);
		btn_progress = (Button) findViewById(R.id.btn_progress);
		btn_single = (Button) findViewById(R.id.btn_single);
		btn_multi = (Button) findViewById(R.id.btn_multi);

		btn_simple.setOnClickListener(this);
		btn_custom.setOnClickListener(this);
		btn_progress.setOnClickListener(this);
		btn_single.setOnClickListener(this);
		btn_multi.setOnClickListener(this);

	}

	@Override
	public void onClick(View v) {
		// TODO Auto-generated method stub
		switch (v.getId()) {
		case R.id.btn_simple:
			showDialog(R.id.btn_simple);
			break;
		case R.id.btn_custom:
			showDialog(R.id.btn_custom);
			break;
		case R.id.btn_progress:
			showDialog(R.id.btn_progress);
			break;
		case R.id.btn_single:
			showDialog(R.id.btn_single);
			break;
		case R.id.btn_multi:
			showDialog(R.id.btn_multi);
			break;
		}
	}

	@Override
	public Dialog onCreateDialog(int id) {
		AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
		switch (id) {
		case R.id.btn_simple: {
			builder.setTitle("my dialog  btn_simple");
			builder.setNegativeButton("取消", null);
			builder.setPositiveButton("确定", null);
			builder.setNeutralButton("中立", null);

			break;
		}
		case R.id.btn_custom: {
			builder.setTitle("my dialog  btn_custom");
			
			View view =LayoutInflater.from(this).inflate(R.layout.custom, null);
			builder.setView(view);
			
			builder.setPositiveButton("确定", null);
			builder.setNegativeButton("取消", null);
			builder.setNeutralButton("中立", null);
			break;
		}
		case R.id.btn_progress: {
			ProgressDialog progressDialog=new ProgressDialog(this);
			progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
			progressDialog.setMessage("正在下载");
			return progressDialog;
		}
		case R.id.btn_single: {
			builder.setTitle("my dialog  btn_single");
			
			builder.setSingleChoiceItems(new String[]{"aaa","bbb","ccc","ddd","eee"}, 0, null);
			
			builder.setPositiveButton("确定", null);
			builder.setNegativeButton("取消", null);
			builder.setNeutralButton("中立", null);
			break;
		}
		case R.id.btn_multi: {
			builder.setTitle("my dialog  btn_multi");
			
			builder.setMultiChoiceItems(new String[]{"aaa","bbb","ccc","ddd","eee"},null, null);
			
			builder.setPositiveButton("确定", null);
			builder.setNegativeButton("取消", null);
			builder.setNeutralButton("中立", null);
			break;
		}
		}

		return builder.create();
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		getMenuInflater().inflate(R.menu.activity_main, menu);
		return true;
	}

}




activity_main.xml


<RelativeLayout 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" >

    <Button
        android:id="@+id/btn_simple"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:text="简单的Dialog" />

    <Button
        android:id="@+id/btn_custom"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
		android:layout_below="@id/btn_simple"
        android:text="自定义Dialog" />
    
    <Button
        android:id="@+id/btn_progress"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
		android:layout_below="@id/btn_custom"
        android:text="进度条Dialog" />
    
    <Button
        android:id="@+id/btn_single"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
		android:layout_below="@id/btn_progress"
        android:text="单选Dialog" />
    
    <Button
        android:id="@+id/btn_multi"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
		android:layout_below="@id/btn_single"
        android:text="复选Dialog" />
</RelativeLayout>

custom.xml
<?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" >

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="300dp" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical" >

            <ImageView
                android:id="@+id/img1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:src="@drawable/ic_launcher" />

            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="请在下面输入内容" />

            <EditText
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="请在这里输入内容" />

            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="以下是单选框" />

            <RadioGroup
                android:layout_width="match_parent"
                android:layout_height="wrap_content" >

                <RadioButton
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:text="aaa" />

                <RadioButton
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:text="bbb" />

                <RadioButton
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:text="ccc" />

                <RadioButton
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:text="ddd" />

                <RadioButton
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:text="eee" />
            </RadioGroup>

            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="以下是复选框" />

            <CheckBox
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="aaa" />

            <CheckBox
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="bbb" />

            <CheckBox
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="ccc" />

            <CheckBox
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="ddd" />

            <CheckBox
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="eee" />

            <CheckBox
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="fff" />
        </LinearLayout>
    </ScrollView>

</LinearLayout>

分享到:
评论

相关推荐

    Android进度条对话框Demo.rar

    在Android开发中,进度条对话框(ProgressDialog)是用户界面设计中的一个重要元素,它用于向用户展示一个操作的进度或等待状态,增强用户体验。当执行耗时操作如网络请求、文件下载或数据库操作时,使用进度条...

    本工程示例 使用 Activity 托管对话框

    在Android早期版本(API Level 10及以下)中,Activity类提供此方法来管理和显示对话框。当调用`showDialog(int id)`时,系统会查找对应ID的对话框并显示。 3. **创建对话框**: - `onCreateDialog()`:这是...

    android5.0对话框

    在Android开发中,对话框(Dialog)是一种非常重要的组件,它用于向用户显示临时信息或者进行简单的交互。在Android 5.0(Lollipop)版本中,系统引入了全新的Material Design设计语言,对话框的样式也随之发生了...

    两种方式实现等待对话框

    ProgressDialog是Android SDK提供的一种内置对话框,专门用于显示进度条,它有两种样式:旋转的菊花样式(spinning wheel)和水平的进度条样式。使用ProgressDialog非常简单,通常包括以下步骤: 1. 创建...

    Android项目所有Dialog对话框.rar

    1. **基本对话框**:这是最简单的对话框形式,通常包含标题、消息和按钮。可以通过`AlertDialog.Builder`来创建,添加`setTitle()`、`setMessage()`和`setPositiveButton()`、`setNegativeButton()`等方法来定制内容...

    Android学习笔记(九)——更复杂的进度对话框

    - Android P及以上版本不再支持ProgressDialog,因为它被视为过时。推荐使用`AlertDialog`配合`ProgressBar`或者`Material Design`的`ProgressIndicator`。 在提供的代码文件`Dialog1`中,可能包含了实现上述功能...

    对话框各种使用,dialog各种形式

    在Android开发中,对话框(Dialog)是一种非常重要的组件,用于与用户进行交互,提供临时信息或者接收用户的输入。在本篇文章中,我们将深入探讨`Dialog`的各种使用方式及其多种形式。 1. **基本对话框** 基本的`...

    Android编程实现对话框形式进度条功能示例

    在Android开发中,对话框(Dialog)是一种常用的用户交互组件,它可以用来展示临时信息或进行简单操作确认。对话框形式的进度条(ProgressDialog)则在执行耗时操作时提供反馈,让用户了解任务的进行状态。本示例将...

    Android技术知识点:如何改造过时的FlycoTabLayout组件

    然而,随着时间的推移,这个组件可能变得过时,不再支持新的Android版本或者设计规范。因此,对过时的FlycoTabLayout进行改造是必要的,以保持应用的兼容性和用户体验。以下是一些关键知识点,帮助你理解如何进行...

    Android Dialog 对话框详解及示例代码

    Dialog是Android中一个非View子类的用户界面元素,通常用于显示临时信息或进行简单的用户交互。它不直接继承自View,但可以通过inflate布局来展示自定义的内容。Dialog有一些预定义的子类,如AlertDialog、...

    Android技术知识点:如何改造过时的DialogUI组件

    在Android Studio中,我们通常通过调用`AlertDialog.Builder`来创建Dialog,并通过`setTitle()`, `setMessage()`, `setPositiveButton()`, `setNegativeButton()`等方法来设置其内容。然而,这些默认样式可能过于...

    android资料

    它可以从活动内部或外部弹出,分为警报对话框、简单对话框、进度对话框等。DialogFragment是Android推荐的对话框实现方式,它允许在对话框关闭时保存状态,并且更好地适应碎片(Fragment)的使用场景。 以上知识点...

    MFC基于对话框读入视频

    此外,考虑到OpenCV 1.0已经过时,现代的OpenCV版本提供了更丰富的功能和更友好的API,如果你的项目允许,升级到最新版OpenCV会有更多的优势。 总结来说,这个项目结合了MFC的对话框界面设计与OpenCV的视频处理能力...

    android中AsyncTask的用法

    总之,AsyncTask是Android提供的一种方便的异步处理机制,特别适用于简单的后台任务和UI交互。正确理解和使用它可以有效地提升应用的用户体验,避免因阻塞UI线程而引起的ANR(Application Not Responding)问题。...

    startActivityForResult过时.md

    startActivityForResult过时.md

    Android技术知识点:如何改造过时的LikeButton组件

    接下来,我们可以利用`android:stateListAnimator`属性添加触摸反馈动画,使按钮在被点击时有明显的视觉变化。Material Components库也提供了一些预定义的动画,如`@android:anim/button_pressed_animation`。 ```...

    android安卓app已经放弃使用Theme.Dialog,改用Theme.Holo.DialogWhenLarge

    "Theme.Dialog"和"Theme.Holo.DialogWhenLarge"都是Android系统提供的两种不同的对话框主题。本篇文章将详细探讨这两种主题的区别,以及为何Android应用可能选择从"Theme.Dialog"转向"Theme.Holo.DialogWhenLarge"。...

    android弹出框和加载等待

    在Android中实现加载等待效果有几种常见方法: 1. ProgressDialog:这是Android SDK提供的一个老式的加载等待组件,通常显示一个圆形的进度条。但它已经过时,不推荐在新的开发项目中使用。 2. ProgressBar:一个更...

    所有Dialog对话框(实用1).zip

    在Android开发中,Dialog对话框是一种非常常见的用户交互元素,用于提供临时信息或者获取用户的确认、选择等操作。本资源“所有Dialog对话框(实用1).zip”可能包含了一系列常用的Dialog实现示例,旨在帮助开发者更好...

Global site tag (gtag.js) - Google Analytics