本文实例讲述了android开发之滑动数值选择器numberpicker用法。分享给大家供大家参考,具体如下:
简介:
numberpicker: 用户既可以从键盘输值,也可以拖动来选择值
实际效果:
常用方法:
1. setminvalue()
设置组件支持的最小值
2. setmaxvalue()
设置组建支持的最大值
3. setvalue()
设置该组件的当前值
在布局文件中调用:
<?xml version="1.0" encoding="utf-8" ?> <tablelayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <tablerow android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:orientation="vertical"> <textview android:text="选择时钟" android:textsize="20dp" android:layout_width="match_parent" android:layout_height="wrap_content"/> <numberpicker android:id="@+id/np1" android:solidcolor="@color/colorprimarydark" android:layout_width="match_parent" android:layout_height="wrap_content" android:focusable="true" android:focusableintouchmode="true"/> </tablerow> <tablerow android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:orientation="vertical"> <textview android:text="选择分钟" android:textsize="20dp" android:layout_width="match_parent" android:layout_height="wrap_content"/> <numberpicker android:id="@+id/np2" android:solidcolor="@color/coloraccent" android:layout_width="match_parent" android:layout_height="wrap_content" android:focusable="true" android:focusableintouchmode="true" /> </tablerow> </tablelayout>
关于监听事件:
1. setonvaluechangedlistener
调用监听事件
2. onvaluechange
具体执行( int oldval :之前详实的数值 , int newval 改变或现时的数值)
具体实现方法:
public class mainactivity extends activity { private numberpicker np1,np2; //定义上下限具体值 private int min = 10,max = 50; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); np1 = (numberpicker) findviewbyid(r.id.np1); //设置np1的最大值只和最小值 np1.setminvalue(0); np1.setmaxvalue(23); //设置哪怕的当前值 np1.setvalue(min); np1.setonvaluechangedlistener(new numberpicker.onvaluechangelistener() { @override public void onvaluechange(numberpicker picker, int oldval, int newval) { min = newval; showselectedprice(); } }); np2 = (numberpicker) findviewbyid(r.id.np2); //设置np1的最大值只和最小值 np2.setminvalue(0); np2.setmaxvalue(23); //设置哪怕的当前值 np2.setvalue(max); np2.setonvaluechangedlistener(new numberpicker.onvaluechangelistener() { @override public void onvaluechange(numberpicker picker, int oldval, int newval) { min = newval; showselectedprice(); } }); } private void showselectedprice(){ toast.maketext(mainactivity.this,"设定闹钟时间为:" + min + " : " + max,toast.length_short).show(); } }
更多关于android相关内容感兴趣的读者可查看本站专题:《android开发入门与进阶教程》、《android调试技巧与常见问题解决方法汇总》、《android基本组件用法总结》、《android视图view技巧总结》、《android布局layout技巧总结》及《android控件用法总结》
希望本文所述对大家android程序设计有所帮助。
如对本文有疑问, 点击进行留言回复!!
Android安卓水滴屏适配状态栏图标(图标过多时显示一个点)
android studio使用Flutter创建web项目
android如何使用taskAffinity属性对任务栈操作控制
android对PDF文件的操作(上传、预览、下载和转存相册)
Android通过代码批量生成字符图标用于给输入法显示状态栏的图标
网友评论