`

StartActivityForResult实现确认对话框

 
阅读更多

1.

llDelete.setOnClickListener(new OnClickListener() {
			
			public void onClick(View v) {

				//删除弹出对话框
				showDeleteDialog();
			}
		});


/**
	 * 提示一个确认删除的对话框
	 * */
	public void showDeleteDialog()
	{
		Intent intent = new Intent();
		intent.setClass(ItemLongClickedActivity.this, DialogActivityOfComfirmDelete.class);//提示是否保存的Activity
		startActivityForResult(intent, REQUEST_CODE);
	}


private int REQUEST_CODE = 0; 
	private final int COMFIRM_DELETE = 5;
	private final int COMFIRM_NO_DELETE = 6;
	@Override  
    public void onActivityResult(int requestCode, int resultCode, Intent data)  
    {  
         super.onActivityResult(requestCode, resultCode, data);    
         
         if(requestCode == REQUEST_CODE)
         {
        	 if(resultCode == COMFIRM_DELETE)//保存当前联系人
    	     {
    	    	 System.out.println("执行删除联系人的操作");
    	    	 
    	    	 
    	     }
    	     if(resultCode == COMFIRM_NO_DELETE)//不保存
    	     {
    	    	 System.out.println("不删除联系人");
    	    	 
    	     }
         }
	     
    }

 

 

 

2.

 

/**
 * 提示用户是否确认删除
 * */
public class DialogActivityOfComfirmDelete extends Activity
{

	private final int COMFIRM_DELETE = 5;
	
	private final int COMFIRM_NO_DELETE = 6;
	
	private Button btnOk;
	
	private Button btnCancel;
	@Override
	public void onCreate(Bundle savedInstanceState)
	{
		super.onCreate(savedInstanceState);
		requestWindowFeature(Window.FEATURE_NO_TITLE);
		setContentView(R.layout.dialog_activity_of_comfirm_delete);
		
		btnOk = (Button)findViewById(R.id.daocd_ok);
		btnCancel = (Button)findViewById(R.id.daocd_cancel);
		
		
		btnOk.setOnClickListener(new OnClickListener() {
			
			public void onClick(View v) {
				// 确认删除
				delete();
			}
		});
		
	    btnCancel.setOnClickListener(new OnClickListener() {
			
			public void onClick(View v) {
				// 取消删除
				noDelete();
			}
		});
	}
	
	
	
	public void delete()
	{
		Bundle bundle = new Bundle();  
	    Intent intent = new Intent();  
	    intent.putExtras(bundle);//用Intent保存对象  
	    setResult(COMFIRM_DELETE, intent);  
	    finish(); 
	}
	
	public void noDelete()
	{
		Bundle bundle = new Bundle();  
	    Intent intent = new Intent();  
	    intent.putExtras(bundle);//用Intent保存对象  
	    setResult(COMFIRM_NO_DELETE, intent);  
	    finish(); 
	}
	
}
 

 

3.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:background="#ffffff" >
<!-- 提示用户是否确认删除 -->
     <TextView 
	        android:layout_width="fill_parent"
	        android:layout_height="50dip"
	        android:gravity="center"
	        android:layout_weight="1"
			android:textSize="22dip"
			android:textColor="#ffffff"
	        android:text="温馨提示"
	        android:background="#33b5e5"
	        />
    
	<TextView 
	    android:id="@+id/daocd_tip"
	    android:layout_width="300dip"
	    android:layout_height="wrap_content"
	    android:layout_marginTop="25dip"
	    android:layout_marginBottom="25dip"
		android:gravity="center"
	    android:textSize="20dip"
	    android:singleLine="true"
	    android:textColor="#404040"
	    android:text="确认删除该联系人?"
	    />

    <LinearLayout 
        android:orientation="horizontal"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center_vertical"
        android:background="#EDEDED"
        >
        
        <Button 
            android:id="@+id/daocd_ok"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:layout_marginLeft="10dip"
            android:layout_marginRight="10dip"
            android:layout_marginTop="8dip"
            android:layout_marginBottom="4dip"
            android:textColor="#404040"
            android:textSize="20dip"
            android:gravity="center"
            android:text="是"/>
        
        <Button 
            android:id="@+id/daocd_cancel"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:layout_marginLeft="10dip"
            android:layout_marginRight="10dip"
            android:layout_marginTop="8dip"
            android:layout_marginBottom="4dip"
            android:textColor="#404040"
            android:textSize="20dip"
            android:gravity="center"
            android:text="否"/>
        
    </LinearLayout>

</LinearLayout>
 

 

 

分享到:
评论

相关推荐

    实现应用对话框主题的Activity

    对话框通常用于显示警告、确认信息或者收集用户的简单输入。本篇文章将深入探讨如何实现应用对话框主题的Activity,以及在这个过程中可能遇到的关键知识点。 首先,我们需要创建一个新的Activity,并为其指定对话框...

    android 打开文本对话框

    在Android开发中,创建并显示一个文本对话框是常见的任务,尤其在用户需要输入或确认信息时。这个场景中提到的“android 打开文本对话框”是一个Android应用功能,用于展示一个包含文本输入和交互的对话框。下面将...

    Android文件对话框的代码例子

    在Android开发中,创建用户友好的交互界面是至关重要的,其中一种常见的交互方式就是通过对话框(Dialog)来实现。对话框通常用于显示临时信息、请求用户输入或进行一些简单的操作,比如日期选择、时间选择、信息...

    Android实现模态dialog

    在Android开发中,模态对话框(Modal Dialog)是一种常见的用户界面元素,它强制用户与当前弹出的对话框交互,直到用户进行某种操作(如点击确定或取消按钮)后才能继续进行其他操作。在标题提到的“Android实现模态...

    dialog效果的activity

    - **接口回调**:为了将Dialog Activity的结果传递回启动它的Activity,可以使用`startActivityForResult()`和`onActivityResult()`,或者通过BroadcastReceiver或EventBus实现回调机制。 6. **对话框的关闭** - ...

    android-应用管理器的设计与实现

    在执行卸载前,应用管理器通常会检查用户是否有卸载权限,并向用户展示确认对话框。 关于软键盘,它是Android输入系统的关键部分。应用管理器可能需要在某些场景下隐藏或显示软键盘,这可以通过InputMethodManager...

    Android实现拨打电话功能demo

    7. **用户交互提示**:在实际应用中,为了提供良好的用户体验,你可能需要在拨打电话前显示一个确认对话框,让用户确认是否拨打电话,防止意外触发。 以上就是Android实现拨打电话功能的基本步骤和相关知识点。在...

    android中文apidemo详解,适合新手阅读快速上手

    除了自定义对话框,ApiDemo还涵盖标准的对话框用法,如警告对话框、确认对话框和进度对话框,以及如何在不同场景下使用它们。 8. **转发(Forwarding)**: 这一部分讲解了如何在Activity之间进行数据传递和事件...

    MediaProjection实现录屏

    这个过程通常涉及弹出一个系统对话框,让用户确认是否允许应用录屏。 1. **请求录屏权限**: - 创建`MediaProjectionManager`实例:`MediaProjectionManager manager = (MediaProjectionManager) getSystemService...

    android 相册图片多选

    当用户点击图片时,可以弹出确认删除的对话框,或者添加更多图片。 6. **图片裁剪**:在某些情况下,你可能还需要提供图片裁剪功能,这可以通过启动一个裁剪`Intent`(例如使用`com.android.camera.action.CROP`)...

    安卓打电话实例

    通常,为了用户友好,会先弹出一个确认对话框,询问用户是否确实要拨打电话。如果用户确认,再启动Intent。 4. **处理权限请求**: 对于Android 6.0及以上版本,需要在运行时检查和请求权限。可以使用`...

    listview的item子控件删除和跳转传值,点击选中

    对于删除操作,你可能需要弹出确认对话框以防误操作。对于页面跳转,你可能需要处理返回键以确保正确的导航流。对于选中效果,你可以考虑增加触摸反馈,比如使用Selector来定义不同状态下的背景图片。 总的来说,...

    通讯录 android

    通过`startActivityForResult()`启动,这样用户可以在确认对话框中查看并发送短信。 至于查看资源文件,Android提供了`AssetManager`类来访问放置在应用assets目录下的非代码资源,如CSV文件、JSON文件等。你可以将...

    安卓一些项目的代码

    它可以是警告、确认、简单输入等类型。在Android开发中,我们通常使用AlertDialog类或者自定义DialogFragment来创建对话框。 2. **demo_ImageView**: ImageView是Android中的一个视图组件,用于显示图像资源,如...

    android 在线升级

    调用`startActivityForResult()`启动这个`Intent`,用户将看到一个系统对话框询问是否安装更新。 6. **处理安装结果**: - 安装过程中,应监听`ActivityResult`来处理安装结果。如果安装成功,用户需要重新启动...

    1个apk安装另一个apk,安装多个apk

    如果你想避免用户看到安装确认对话框,可以添加`FLAG_GRANT_READ_URI_PERMISSION`标志: ```java installIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); ``` 2. **处理权限** 在Android 6.0(API...

    Google Android SDK开发范例大全.docx

    介绍了如何创建带有确认、取消等按钮的对话框,以增强应用的交互性。 - **3.13 置换文字颜色的机关——Button与TextView的交互** 讲解了如何通过点击按钮来改变TextView中的文字颜色,展示了基本的事件处理逻辑...

    对话框式的activity

    在Java或Kotlin中,这个Activity的实现与普通Activity并无太大差异,只是在布局设计上更注重对话框的特性。通常,对话框式Activity的布局会包含一个标题(可选)、内容区域以及一些操作按钮,如确认和取消。 对于...

    Android应用源码之CertInstaller.zip

    4. **启动安装流程**:使用`startActivityForResult()`启动证书安装,用户将在系统级对话框中确认安装。 5. **处理结果**:在回调函数`onActivityResult()`中,检查返回的结果码,判断证书是否成功安装。 通过分析...

    安卓Android入门经典

    - **6.4.2 带有返回值的跳转**:通过startActivityForResult()方法实现数据回传。 ##### 6.5 菜单的使用 - 创建上下文菜单和选项菜单,增强用户体验。 ##### 6.6 弹出对话框 - **6.6.1 提示信息和两个按钮的...

Global site tag (gtag.js) - Google Analytics