`

Android自定义dialog向Activity传递数据

 
阅读更多

自定义对话框:

 

package org.lee.android;

import android.app.Dialog;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class InputDialog extends Dialog {
	private Context context;
	private EditText editText;
	private Button button_sure;
	private Button button_cancel;
	public OnSureClickListener mListener;

	public InputDialog(Context context) {
		super(context);
		this.context = context;
	}

	public InputDialog(Context context, OnSureClickListener listener) {
		super(context);
		mListener = listener;
	}

	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		this.setContentView(R.layout.project_edit_dialog);
		setView();
	}

	private void setView() {
		button_sure = (Button) findViewById(R.id.button_project_dialog_sure);
		button_cancel = (Button) findViewById(R.id.button_project_dialog_cancel);
		editText = (EditText) findViewById(R.id.edit_project_new_name);
		// 这里的监听事件,因为该类继承lDialog类的DialogInterface,而DialogInterface中也有OnClickListener,因此需要用到全名View.OnClickListener
		button_sure.setOnClickListener(new View.OnClickListener() {
			public void onClick(View v) {
				mListener.getText(editText.getText().toString());
				dismiss();
			}
		});
		button_cancel.setOnClickListener(new View.OnClickListener() {
			public void onClick(View v) {
				mListener.getText(editText.getText().toString());// 在Button监听事件中实现这一方法
				dismiss();
			}
		});
	}

	public interface OnSureClickListener {
		void getText(String string); // 声明获取EditText中数据的接口
	}
	
}

 

 

 

 

 

Activity中调用方法:

 

OnClickListener click_new = new OnClickListener() {
		public void onClick(View v) {
			OnSureClickListener listener1 = new OnSureClickListener() {
				public void getText(String string) {
					inputFile = string;
					try {
						addFile();
					} catch (IOException e) {
					}
				}
			};
			InputDialog d1 = new InputDialog(ProjectActivity.this, listener1);
			d1.show();
		}
   
    };

 

 

分享到:
评论

相关推荐

    android 自定义dialog和activity跳转的样式

    在Android开发中,自定义Dialog和Activity的跳转样式是提升用户体验和应用独特性的重要手段。自定义Dialog可以使应用程序在提示用户信息或者进行选择时,展现出更符合应用风格的界面,而自定义Activity跳转样式则能...

    Android:自定义Dialog-Demo

    本示例"Android:自定义Dialog-Demo"就是针对这种情况提供的一种解决方案。 首先,我们来看自定义Dialog的基本步骤: 1. **创建布局文件**:自定义Dialog的第一步是设计一个XML布局文件,这个文件会定义Dialog的...

    很好android自定义dialog加载转圈等待,适合初学,透明+正常两种主题

    在Android开发中,自定义Dialog是一种常见的需求,用于提供一种用户交互的方式,通常用来显示一些临时的通知或进行一些简短的操作。在这个主题中,我们主要关注如何创建一个自定义的加载等待Dialog,它包括透明和...

    Android 通过自定义Dialog来理解接口回调callback

    在Android开发中,自定义Dialog是一种常见的用户交互方式,它能提供更为丰富的界面展示和定制化功能。本文将深入探讨如何通过自定义Dialog来理解接口回调(callback)机制,这在进行Android应用开发时是非常重要的一...

    Android自定义Dialog带分隔的8位输入框按钮回调输入值部分代码

    在这个场景下,我们想要创建一个带有分隔符的8位输入框的自定义Dialog,并且当用户点击按钮时,能够通过回调方法将输入的值传递到调用它的Activity或Fragment。以下是如何实现这一功能的详细步骤: 首先,我们需要...

    Android 自定义Dialog接口回调参数

    该项目的主要功能是如何自定义Dialog,并通过接口回调的方式把参数传递到activity或者Fragment,主要强调的是一种思想,同时,也阐述了如何改变一个字符串中某部分文字的颜色,需要的小伙伴可以下载

    android自定义dialog

    5. 自定义Dialog主题:你还可以通过设置`android:theme`属性在AndroidManifest.xml中为DialogActivity定义一个自定义的主题,从而改变Dialog的整体风格。 6. 关于动画:为了提升用户体验,你可以在Dialog显示和消失...

    自定义Dialog仿IOS底部弹出

    2. **自定义Dialog类**:接下来,创建一个继承自`AppCompatDialogFragment`的类,这是Android Studio推荐的Dialog实现方式。在这个类中,你需要重写`onCreateDialog`方法,使用`LayoutInflater`加载你的自定义布局,...

    《详解Dialog 三 自定义对话框视图及参数传递》源码

    本文将深入解析如何自定义Dialog的视图以及如何在Dialog中进行参数传递,帮助开发者更好地理解和应用这一功能。 首先,让我们了解Dialog的基本用法。在Android SDK中,Dialog通常通过继承`AlertDialog.Builder`或者...

    android 通过回调实现 完全自定义Dialog 简单易用

    在Android开发中,自定义Dialog是一种常见的需求,它允许开发者根据应用的设计风格和功能需求创建具有独特外观和交互的对话框。本教程将详细介绍如何通过回调机制实现一个完全自定义的Dialog,并确保其简单易用。...

    android 自定义列表式DialogFragment dialog

    在自定义Dialog时,我们可以使用建造者模式来构建对话框的各种配置,如标题、内容、按钮等,使代码更清晰且易于维护。 2. **DialogFragment**:它是Android支持库中的一个类,继承自Fragment,用于展示对话框。与...

    Android自定义漂亮Dialog中嵌入自定义时间选择器和日期选择器

    本文将深入探讨如何在Android自定义Dialog中嵌入自定义的时间选择器和日期选择器,以实现更加美观且用户体验良好的界面。 首先,我们需要理解Android原生的DatePicker和TimePicker组件。DatePicker用于让用户选择...

    从底部升起的Menu菜单_自定义Dialog

    在Android开发中,自定义Dialog是一种常见的用户交互方式,它能提供更为个性化和丰富的界面展示。本示例“从底部升起的Menu菜单_自定义Dialog”着重讲解如何创建一个从底部弹出,带有动画效果的菜单Dialog。我们将...

    Android编程自定义Dialog的方法分析

    总之,Android自定义Dialog是通过继承Dialog类并重写`onCreate()`方法来实现的。这允许开发者根据需要创建独特的布局和功能,从而提供更丰富的用户体验。同时,注意保持Dialog的轻量化和易用性,以提高应用的整体...

    自定义DialogDemo

    在Android应用开发中,自定义Dialog是一个常见的需求,它能够帮助我们实现更加个性化和功能丰富的交互体验。"自定义DialogDemo"是一个项目组件,专门用于展示如何在Android中创建和使用自定义对话框。这个Demo提供了...

    自定义万能dialog

    首先,创建自定义`Dialog`需要继承`android.app.Dialog`或`androidx.appcompat.app.AlertDialog.Builder`类。`Dialog`类提供了基本的对话框结构,而`AlertDialog.Builder`则允许我们更方便地构建对话框,通过链式...

    android自定义的可扩展漂亮的dialog对话框

    "android自定义的可扩展漂亮的dialog对话框"这个项目提供了一种解决方案,适用于Android 2.2及更高版本,能够实现条件筛选、消息提示以及浮出窗口的操作。下面我们将深入探讨自定义对话框的关键知识点。 1. **...

    自定义dialog

    在Android开发中,自定义Dialog是一种常见的需求,它允许开发者根据应用的设计风格和功能需求创建具有独特外观和行为的对话框。本篇文章将深入探讨如何实现一个自定义Dialog,包括去除背景黑框并添加描边效果。 ...

    自定义Dialog对话框已修改完善版本(实现微信分享对话框)

    在Android开发中,自定义Dialog对话框是一种常见的需求,它能提供更加个性化和丰富的用户体验。在本项目中,我们看到一个已经修改完善的自定义Dialog,其设计灵感来源于微信的分享对话框。这个对话框不仅外观与微信...

    自定义Dialog

    综上所述,自定义Dialog是Android开发中的重要技能,通过理解并运用上述知识点,你可以创建出符合应用风格且功能丰富的Dialog组件。在实际项目中,不断实践和优化,将使你的Dialog设计更加得心应手。

Global site tag (gtag.js) - Google Analytics