Android的数字选择器NumberPicker-android学习之旅(三十七)

我想说的话

今天晚上我依然在图书馆写博客,其实此刻我的没心激动而忐忑,因为明天就是足球赛的决赛,我作为主力球员压力很大,因对对方很强大,但是那又怎么样。so what。。。我不会停止写博客的

NumberPicker简介

NumberPicker这个控件可以让你滑动来选择数值。

通过三个方法来设置:

1.setMinValue()

2.setMaxVlaue()

3.setValue()

代码示例

<?xml version="1.0" encoding="utf-8"?>
<TableLayout 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" android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        tools:context=".MainActivity"
    android:orientation="vertical"
        >
    <TableRow
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">
        <TextView
            android:layout_width="120dp"
            android:layout_height="wrap_content"
            android:text="选择低价"/>
        <NumberPicker
        android:id="@+id/np1"
        android:layout_width="match_parent"
        android:layout_height="80dp"
        android:focusable="true"
        android:focusableInTouchMode="true"
        />
</TableRow>
    <TableRow
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">
        <TextView
            android:layout_width="120dp"
            android:layout_height="wrap_content"
            android:text="选择低价"/>
        <NumberPicker
            android:id="@+id/np2"
            android:layout_width="match_parent"
            android:layout_height="80dp"
            android:focusable="true"
            android:focusableInTouchMode="true"/>
    </TableRow>
</TableLayout>
package peng.liu.test;

import android.app.Activity;
import android.graphics.Color;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.CalendarView;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.FrameLayout;
import android.widget.GridView;
import android.widget.ImageSwitcher;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.NumberPicker;
import android.widget.SimpleAdapter;
import android.widget.TextSwitcher;
import android.widget.TextView;
import android.widget.TimePicker;
import android.widget.Toast;
import android.widget.ViewFlipper;
import android.widget.ViewSwitcher;

import java.util.ArrayList;
import java.util.Calendar;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class MainActivity extends Activity {
    private NumberPicker np1,np2;
    private int minValue = 25;
    private int maxValue = 75;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        np1 = (NumberPicker) findViewById(R.id.np1);
        np2 = (NumberPicker) findViewById(R.id.np2);
        np1.setMinValue(10);
        np1.setMaxValue(50);
        np1.setValue(minValue);
        np2.setMinValue(50);
        np2.setMaxValue(100);
        np2.setValue(maxValue);
        np1.setOnValueChangedListener(new NumberPicker.OnValueChangeListener() {
            @Override
            public void onValueChange(NumberPicker numberPicker, int i, int i2) {
                   minValue = i2;
                showNumber();
            }
        });
        np2.setOnValueChangedListener(new NumberPicker.OnValueChangeListener() {
            @Override
            public void onValueChange(NumberPicker numberPicker, int i, int i2) {
                maxValue = i2;
                showNumber();
            }
        });
    }
    public void showNumber(){
        Toast.makeText(this,minValue+maxValue+"",Toast.LENGTH_LONG).show();
    }
}

效果图

时间: 2024-10-09 03:12:27

Android的数字选择器NumberPicker-android学习之旅(三十七)的相关文章

Android数字选择器-NumberPicker

数字选择器NumberPicker是Android3.0之后引入的一个控件,比较常用,比如说手机常用的闹钟,可以选择小时和分钟,如果你需要兼容3.0之前版本,GitHub上有开源的项目,具体的下载地址https://github.com/SimonVT/android-numberpicker.本人就没有使用开源的项目,就简单的使用了NumberPicker显示一下效果,开始正题吧: 基础维护 开发东西先看下效果吧: NumberPicker和TextView显示一下时间,线性布局,看下布局文件

Android的ViewAnimator及其子类ViewSwitcher-android学习之旅(三十三)

ViewAnimator继承了FrameLayout,多个组件重合在一起,可以加入多个组件,然后切换的时候会有动画. ViewAnimator及其子类的继承关系 ViewAnimator常用属性 ViewSwitcher的简介 ViewSwitcher继承了ViewAnimator,组件重叠. setFactory()方法可以设置ViewFactory(ViewSwitcher.ViewFactory),用ViewFactroy来实现View. 仿android系统的Launcher界面 pac

Android列表视图ListView和ListActivity-android学习之旅(二十四)

ListView简介 ListView是android中常用的一种控件,创建ListView有两种方式: 1.在xml中使用ListView控件创建. 2.使用activity继承ListActivity,然后使用setListAdapter()创建,如果需要在xml中创建,需要android:id = @id:android:list Listview和GridView和Spinner和Gallery等Adapterview都是容器,用adapter来提供数据,而adapterView负责数据

Dynamic CRM 2013学习笔记(三十七)自定义审批流7 - 初始化(整套审批流下载、安装)

  前面介绍了自定义审批流的配置.使用,这篇介绍下如何进行初始化.   一. 下载   从下面的地址下载整个审批流: http://yunpan.cn/cJR65k2Grj3Ss  访问密码 8065 下载完后,一共有三块内容:   二.初始化 1. Web 把CRMWFExtends文件夹copy到ISV目录下 默认的目录应该是C:\Program Files\Microsoft Dynamics CRM\CRMWeb\ISV   2. 解决方案 导入solution:ApprovalWork

Android文本框-android学习之旅(十七 )

文本框简介 文本框属于基本的andoid控件,TextView继承了View是最基本的文本框,它的子类包括EditView和Button等,TextView的大部分方法,它的子类也可以使用. TextView的继承关系 Textview的属性 高能预警....有点多

[原创] zabbix学习之旅三:agent安装

部署完zabbix server后,自然要部署zabbix agent.在官方描述中,agent是部署在被监控的机器上,用于采集CPU.内存.磁盘等统计信息,并上报给server用于进一步处理.agent的采集信息方式也非常高效,是通过本机操作系统的系统调用完成. agent主要通过被动和主动两种方式上报本机信息,顾名思义,被动方式意味着server下达采集命令时,agent才会去收集信息:而主动方式意味着agent会在第一次时就从server处获取要采集的items,并定期将每个item的新值

[extjs5学习笔记]第三十七节 Extjs6预览版都有神马新东西

本文在微信公众号文章地址:微信公众号文章地址 本文地址:http://blog.csdn.net/sushengmiyan/article/details/45190485 [TOC] 在Ext JS 6,可以使用单一的javascript框架来无缝的创建基于桌面.平板和智能手机的应用程序. ExtJS 6 早期版本发布,新增功能如下: 合并了 Ext JS 和 Sencha Touch 功能 通过 Sencha Cmd 6,新增时尚主题功能 3D 绘图功能增强 默认Ext JS 网格辅助选项为

我的Go语言学习之旅三:Go语言中的for循环

这个但是为难我了,我一直是走在WEB前的程序猿,各种循环用起来得心应手.突然间发现到了Go这里竟然行不通了,查阅后才发现,原来Go的for是这样写的. for i:=0;i<10;i++{ fmt.Printf("%d\n",i); } 非常有才的一种写法,我用起来感觉的确没有 带有圆括号舒服. 接下来.看很多其它关于 for 的实例吧 Go 的 for 循环有三种形式.仅仅有当中的一种使用分号. for init; condition; post { } ← 和 C 的 for

Linux学习总结(三十七)lamp之禁止php解析 user_agent 访问控制 php相关配置

一 禁止php解析 为了使某些网站更加安全,防止不法之徒上传某类伪装过的恶意木马文件,(比如php文件),盗取服务器重要资源,我们要针对一些目录做保护,禁止其解析php核心配置文件内容 <Directory /data/wwwroot/www.123.com/upload> php_admin_flag engine off </Directory> 修改虚拟主机配置文件,-t ,graceful 后测试我们发现将123.php放在其他在位置,可以正常解析,放在upload目录下,