博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Dialog+NumberPicker
阅读量:4339 次
发布时间:2019-06-07

本文共 8451 字,大约阅读时间需要 28 分钟。

 

 

package com.gtercn.myapplication;import android.app.Activity;import android.content.DialogInterface;import android.os.Bundle;import android.support.v7.app.AlertDialog;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.widget.Button;import android.widget.DatePicker;import android.widget.EditText;import android.widget.NumberPicker;import android.widget.TextView;import android.widget.Toast;import java.text.SimpleDateFormat;import java.util.Calendar;public class MainActivity extends Activity {    private Button mButton;    private NumberPicker mCityPicker;    private NumberPicker mCityPicker2;    private NumberPicker mCityPicker3;    private final static String[] CITYS = {"2004", "2006", "2003", "2002", "2001", "2016"};    private final static String[] date = {"5", "6", "7", "8", "9", "10"};    private final static String[] monteh = {"12", "11", "10", "9", "8", "7"};    private int mSeletedIndex;    private int mSeletedIndex2;    private int mSeletedIndex3;    String txt1;    String txt2;    String txt3;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_light);        mButton = (Button) findViewById(R.id.button);        mButton.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                AlertDialog.Builder builder7 = new AlertDialog.Builder(                        MainActivity.this);                builder7.setTitle("标题");                builder7.setIcon(R.mipmap.ic_launcher);                View view = LayoutInflater.from(MainActivity.this).inflate(                        R.layout.activity_main, null);                mCityPicker = (NumberPicker) view.findViewById(R.id.city_picker);                mCityPicker2 = (NumberPicker) view.findViewById(R.id.city_picker2);                mCityPicker3 = (NumberPicker) view.findViewById(R.id.city_picker3);                //设置数据源                mCityPicker.setDisplayedValues(CITYS);                //设置数据长度                mCityPicker.setMinValue(0);                mCityPicker.setMaxValue(CITYS.length - 1);                mCityPicker.setValue(4);                //设置监听                mCityPicker.setOnValueChangedListener(new NumberPicker.OnValueChangeListener() {                    @Override                    public void onValueChange(NumberPicker picker, int oldVal, int newVal) {                        mSeletedIndex = newVal;                    }                });                mCityPicker.setOnScrollListener(new NumberPicker.OnScrollListener() {                    @Override                    public void onScrollStateChange(NumberPicker view, int scrollState) {                        switch (scrollState) {                            case NumberPicker.OnScrollListener.SCROLL_STATE_FLING:                                Log.e("TAG", "SCROLL_STATE_FLING");                                //惯性滑动                                break;                            case NumberPicker.OnScrollListener.SCROLL_STATE_TOUCH_SCROLL:                                //手动滑动                                Log.e("TAG", "SCROLL_STATE_TOUCH_SCROLL");                                break;                            case NumberPicker.OnScrollListener.SCROLL_STATE_IDLE:                                //停止滑动                                Log.e("TAG", "SCROLL_STATE_IDLE");                                txt1 = CITYS[mSeletedIndex].toString();                                //mTextView.setText(CITYS[mSeletedIndex]);                                //Toast.makeText(MainActivity.this, CITYS[mSeletedIndex], Toast.LENGTH_SHORT).show();                                break;                        }                    }                });                //设置数据源                mCityPicker2.setDisplayedValues(monteh);                //设置数据长度                mCityPicker2.setMinValue(0);                mCityPicker2.setMaxValue(monteh.length - 1);                mCityPicker2.setValue(4);                //设置监听                mCityPicker2.setOnValueChangedListener(new NumberPicker.OnValueChangeListener() {                    @Override                    public void onValueChange(NumberPicker picker, int oldVal, int newVal) {                        mSeletedIndex2 = newVal;                    }                });                mCityPicker2.setOnScrollListener(new NumberPicker.OnScrollListener() {                    @Override                    public void onScrollStateChange(NumberPicker view, int scrollState) {                        switch (scrollState) {                            case NumberPicker.OnScrollListener.SCROLL_STATE_FLING:                                Log.e("TAG", "SCROLL_STATE_FLING");                                //惯性滑动                                break;                            case NumberPicker.OnScrollListener.SCROLL_STATE_TOUCH_SCROLL:                                //手动滑动                                Log.e("TAG", "SCROLL_STATE_TOUCH_SCROLL");                                break;                            case NumberPicker.OnScrollListener.SCROLL_STATE_IDLE:                                //停止滑动                                Log.e("TAG", "SCROLL_STATE_IDLE");                                txt2 = monteh[mSeletedIndex2];                                break;                        }                    }                });                //设置数据源                mCityPicker3.setDisplayedValues(date);                //设置数据长度                mCityPicker3.setMinValue(0);                mCityPicker3.setMaxValue(date.length - 1);                mCityPicker3.setValue(4);                //设置监听                mCityPicker3.setOnValueChangedListener(new NumberPicker.OnValueChangeListener() {                    @Override                    public void onValueChange(NumberPicker picker, int oldVal, int newVal) {                        mSeletedIndex3 = newVal;                    }                });                mCityPicker3.setOnScrollListener(new NumberPicker.OnScrollListener() {                    @Override                    public void onScrollStateChange(NumberPicker view, int scrollState) {                        switch (scrollState) {                            case NumberPicker.OnScrollListener.SCROLL_STATE_FLING:                                Log.e("TAG", "SCROLL_STATE_FLING");                                //惯性滑动                                break;                            case NumberPicker.OnScrollListener.SCROLL_STATE_TOUCH_SCROLL:                                //手动滑动                                Log.e("TAG", "SCROLL_STATE_TOUCH_SCROLL");                                break;                            case NumberPicker.OnScrollListener.SCROLL_STATE_IDLE:                                //停止滑动                                Log.e("TAG", "SCROLL_STATE_IDLE");                                txt3 = date[mSeletedIndex3];                                break;                        }                    }                });                builder7.setView(view);                builder7.setPositiveButton("确定",                        new android.content.DialogInterface.OnClickListener() {                            @Override                            public void onClick(DialogInterface dialog, int which) {                                // TODO Auto-generated method stub                                Toast.makeText(                                        MainActivity.this,                                        txt1 + txt2 + txt3, Toast.LENGTH_LONG)                                        .show();                            }                        });                builder7.setNegativeButton("取消",                        new android.content.DialogInterface.OnClickListener() {                            @Override                            public void onClick(DialogInterface dialog, int which) {                                // TODO Auto-generated method stub                            }                        });                builder7.create();                builder7.show();            }        });    }}

 布局文件

 

先附上效果图片

 

转载于:https://www.cnblogs.com/niupi/p/5600475.html

你可能感兴趣的文章
亿级曝光品牌视频的幕后设定
查看>>
ARPA
查看>>
JSP开发模式
查看>>
我的Android进阶之旅------>Android嵌入图像InsetDrawable的使用方法
查看>>
Detours信息泄漏漏洞
查看>>
win32使用拖放文件
查看>>
Android 动态显示和隐藏软键盘
查看>>
raid5什么意思?怎样做raid5?raid5 几块硬盘?
查看>>
【转】how can i build fast
查看>>
null?对象?异常?到底应该如何返回错误信息
查看>>
django登录验证码操作
查看>>
(简单)华为Nova青春 WAS-AL00的USB调试模式在哪里开启的流程
查看>>
图论知识,博客
查看>>
[原创]一篇无关技术的小日记(仅作暂存)
查看>>
20145303刘俊谦 Exp7 网络欺诈技术防范
查看>>
原生和jQuery的ajax用法
查看>>
iOS开发播放文本
查看>>
20145202马超《java》实验5
查看>>
JQuery 事件
查看>>
main(argc,argv[])
查看>>