Android学习第十一天----AlertDialog_1

AlertDialog对话框应用一

项目需求:在主页面上显示一个button,点击button,跳出一个对话框,里面有图片,文字还有按钮可以选择;

xml中添加一个button

<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"
    tools:context=".MainActivity" >

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:layout_marginBottom="84dp"
        android:text="点我" />

</RelativeLayout>

在MainActivity中

package com.example.alertdialog_1;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;
import android.view.View;

import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends Activity implements OnClickListener
{
    private AlertDialog.Builder mBuilder;
    private Button mButton;
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        mButton = (Button)findViewById(R.id.button1);
        mButton.setOnClickListener(new View.OnClickListener()
        {
            
            @Override
            public void onClick(View v)
            {
                mBuilder = new AlertDialog.Builder(MainActivity.this);
                
                mBuilder.setTitle("请选择:");
                mBuilder.setIcon(R.drawable.ic_launcher);
                mBuilder.setMessage("以下你喜欢的有");
                
                mBuilder.setPositiveButton("确定", MainActivity.this);
                mBuilder.setNeutralButton("取消", MainActivity.this);
                mBuilder.setNegativeButton("退出", MainActivity.this);
                
                mBuilder.create();
                mBuilder.show();
            }
        });
        
        
    }

    @Override
    public void onClick(DialogInterface dialog, int which)
    {
        switch (which)
        {
        case AlertDialog.BUTTON_NEGATIVE:
            Toast.makeText(MainActivity.this, "neg", Toast.LENGTH_SHORT).show();
            break;
    case AlertDialog.BUTTON_NEUTRAL:
        Toast.makeText(MainActivity.this, "neu", Toast.LENGTH_SHORT).show();
            break;
    case AlertDialog.BUTTON_POSITIVE:
        Toast.makeText(MainActivity.this, "pos", Toast.LENGTH_SHORT).show();
        break;
        default:
            break;
        }
        
    }
}
package com.example.alertdialog_1;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;
import android.view.View;

import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends Activity implements OnClickListener
{
    private AlertDialog.Builder mBuilder;
    private Button mButton;
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        mButton = (Button)findViewById(R.id.button1);
        mButton.setOnClickListener(new View.OnClickListener()
        {
            
            @Override
            public void onClick(View v)
            {
                mBuilder = new AlertDialog.Builder(MainActivity.this);
                
                mBuilder.setTitle("请选择:");
                mBuilder.setIcon(R.drawable.ic_launcher);
                mBuilder.setMessage("以下你喜欢的有");
                
                mBuilder.setPositiveButton("确定", MainActivity.this);
                mBuilder.setNeutralButton("取消", MainActivity.this);
                mBuilder.setNegativeButton("退出", MainActivity.this);
                
                mBuilder.create();
                mBuilder.show();
            }
        });
        
        
    }

    @Override
    public void onClick(DialogInterface dialog, int which)
    {
        switch (which)
        {
        case AlertDialog.BUTTON_NEGATIVE:
            Toast.makeText(MainActivity.this, "neg", Toast.LENGTH_SHORT).show();
            break;
    case AlertDialog.BUTTON_NEUTRAL:
        Toast.makeText(MainActivity.this, "neu", Toast.LENGTH_SHORT).show();
            break;
    case AlertDialog.BUTTON_POSITIVE:
        Toast.makeText(MainActivity.this, "pos", Toast.LENGTH_SHORT).show();
        break;
        default:
            break;
        }
        
    }
}

mBuilder.setTitle();设置提示框的标题

mBuilder.setIcon();设置图片

mBuilder.setMessage("以下你喜欢的有");

mBuilder.setPositiveButton("确定", MainActivity.this);  设置一个正极的按钮,第一个是string,第二个是context

mBuilder.setNeutralButton("取消", MainActivity.this);设置一个中级的

mBuilder.setNegativeButton("退出", MainActivity.this);设置一个负极的按钮

其中对于button的监听,可以直接使用view.onCilckListener来设置监听。

因为button 的监听和AlertDialog的监听器是一样的,只是包名不同而已

posted @ 2013-03-18 20:50  小三小山  阅读(161)  评论(0编辑  收藏  举报