zoukankan      html  css  js  c++  java
  • 2.5.3 使用alertDialog创建自定义对话框

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_gravity="center"
        android:orientation="vertical" >
    
        <Button
            android:id="@+id/btnColor"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:text="自定义颜色列表" />
    
        <Button
            android:id="@+id/btnLogin"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:text="登陆框" />
    
        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:text="TextView" />
    
    </LinearLayout>
    package com.moon.hello2;
    
    import java.util.ArrayList;
    import java.util.Calendar;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    import android.R.anim;
    import android.R.bool;
    import android.R.integer;
    import android.animation.AnimatorSet.Builder;
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.app.Dialog;
    import android.content.DialogInterface;
    import android.content.res.TypedArray;
    import android.database.DataSetObserver;
    import android.os.Bundle;
    import android.os.Handler;
    import android.os.Message;
    import android.support.v7.widget.GridLayout;
    import android.view.Gravity;
    import android.view.Menu;
    import android.view.View;
    import android.view.ViewGroup;
    import android.view.View.OnClickListener;
    import android.view.ViewGroup.LayoutParams;
    import android.view.animation.AnimationUtils;
    import android.widget.AbsListView;
    import android.widget.AdapterView;
    import android.widget.AdapterView.OnItemClickListener;
    import android.widget.AdapterView.OnItemSelectedListener;
    import android.widget.ArrayAdapter;
    import android.widget.AutoCompleteTextView;
    import android.widget.BaseAdapter;
    import android.widget.Button;
    import android.widget.DatePicker;
    import android.widget.ExpandableListAdapter;
    import android.widget.ExpandableListView;
    import android.widget.Gallery;
    import android.widget.GridView;
    import android.widget.ImageSwitcher;
    import android.widget.ImageView;
    import android.widget.LinearLayout;
    import android.widget.ListView;
    import android.widget.ProgressBar;
    import android.widget.RatingBar;
    import android.widget.SimpleAdapter;
    import android.widget.RatingBar.OnRatingBarChangeListener;
    import android.widget.SeekBar;
    import android.widget.DatePicker.OnDateChangedListener;
    import android.widget.SeekBar.OnSeekBarChangeListener;
    import android.widget.TabHost;
    import android.widget.TextView;
    import android.widget.TimePicker;
    import android.widget.TimePicker.OnTimeChangedListener;
    import android.widget.ViewSwitcher.ViewFactory;
    
    public class MainActivity extends Activity {
        private final String[] colorStrings = new String[]{"红色","绿色","黄色"};
        private static final int DIALOG_SC = 1;
        private final boolean[] checkStatus = new boolean[]{true, true, false};
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            this.setContentView(R.layout.activity_main);
            Button button = (Button)findViewById(R.id.btnColor);
            List<Map<String, Object>> list = new ArrayList<Map<String,Object>>();
            for (int i = 0; i < colorStrings.length; i++) {
                Map<String, Object> newMap = new HashMap<String, Object>();
                newMap.put("color", colorStrings[i]);
                newMap.put("img", R.drawable.ic_launcher);
                list.add(newMap);
            }
            final SimpleAdapter adapter = new SimpleAdapter(this, list, R.layout.simple, new String[]{"img","color"}, new int[]{R.id.listIcon,R.id.listText});
            final TextView textView = (TextView)findViewById(R.id.textView1);
            button.setOnClickListener(new OnClickListener() {
                
                @Override
                public void onClick(View arg0) {
                    // TODO Auto-generated method stub
                    AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                    builder.setAdapter(adapter, new DialogInterface.OnClickListener() {
                        
                        @Override
                        public void onClick(DialogInterface arg0, int pos) {
                            // TODO Auto-generated method stub
                            textView.setText("选择了"+colorStrings[pos]);
                        }
                    });
                    builder.setTitle("自定义dialog");
                    builder.setIcon(R.drawable.ic_launcher);
                    builder.create().show();
                }
            });
            //创建一个登陆框dialog
            final GridLayout loginGridLayout = (GridLayout)this.getLayoutInflater().inflate(R.layout.login, null);
            Button loginButton = (Button)findViewById(R.id.btnLogin);
            loginButton.setOnClickListener(new OnClickListener() {
                
                @Override
                public void onClick(View arg0) {
                    // TODO Auto-generated method stub
                    android.app.AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                    builder.setIcon(R.drawable.ic_launcher);
                    builder.setView(loginGridLayout);
                    builder.setPositiveButton("登陆", null);
                    builder.setNegativeButton("取消", null);
                    builder.create().show();
                }
            });
        }
    
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            getMenuInflater().inflate(R.menu.main, menu);
            return true;
        }
    }

    比较有意思的是inflater在英文中是充气泵的意思, inflate是充气

  • 相关阅读:
    查询URL字符串参数
    location 对象
    css3 文字特效
    functionDo
    css3 渐变
    [LeetCode][Java]Peeking Iterator
    [LeetCode][JavaScript]Expression Add Operators
    [LeetCode][JavaScript]Different Ways to Add Parentheses
    [LeetCode][JavaScript]Move Zeroes
    [LeetCode][JavaScript]Binary Tree Postorder Traversal
  • 原文地址:https://www.cnblogs.com/Moon-Face/p/4528484.html
Copyright © 2011-2022 走看看