用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - android代码库

android 如何创建对话框AlertDialog

2014-03-29 作者:java举报

[android]代码库

package cn.luxh.dialognew;

import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.DialogFragment;
import android.content.DialogInterface;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;

public class DialogActivity extends Activity{
    
    private static final String TAG = "DialogActivity";
    
    
    private Button btn_Dialog;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.dialog_activity);
        handleButtonClick();
    }
    
    
    /**
     * 处理按钮事件
     */
    private void handleButtonClick() {
        btn_Dialog = (Button) findViewById(R.id.btn_dialog);
        btn_Dialog.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                    AlertDialogFragment alertDialogFragment = AlertDialogFragment.newInstance();
                    //显示对话框
                    alertDialogFragment.show(getFragmentManager(), "MyDialog");
                }
        });
    }
    
    /**
     * 确定按钮事件处理
     */
    private  void doPositiveClick() {
        Log.d(TAG, "确定按钮事件处理");
        Toast.makeText(this, "确定按钮被点击!", Toast.LENGTH_SHORT).show();
    }
    
    /**
     * 取消按钮事件处理
     */
    private  void doNegativeClick(){
        Log.d(TAG, "取消按钮事件处理");
        Toast.makeText(this, "取消按钮被点击!", Toast.LENGTH_SHORT).show();
    }
    
    /**
     * 生成对话框
     */
    public static class AlertDialogFragment extends DialogFragment{
        
        private static AlertDialogFragment alertDialogFragment = new AlertDialogFragment();
        
        public static AlertDialogFragment newInstance() {
            return alertDialogFragment;
        }
        @Override
        public Dialog onCreateDialog(Bundle savedInstanceState) {
            return new AlertDialog.Builder(getActivity())
                                                .setIcon(R.drawable.ic_launcher)
                                                .setTitle("我的对话窗口")
                                                .setPositiveButton("确定", new DialogInterface.OnClickListener() {
                                                    @Override
                                                    public void onClick(DialogInterface dialog, int which) {
                                                        ((DialogActivity)getActivity()).doPositiveClick();
                                                    }
                                                })
                                                .setNegativeButton("取消", new DialogInterface.OnClickListener() {
                                                    @Override
                                                    public void onClick(DialogInterface dialog, int which) {
                                                        ((DialogActivity)getActivity()).doNegativeClick();
                                                    }
                                                }).create();
        }
    }
}


分享到:
更多

网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。