首页 > 代码库 > 安卓学习第29课——numberPicker

安卓学习第29课——numberPicker

<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" ><TableRow     android:layout_width="match_parent"    android:layout_height="match_parent">    <TextView        android:layout_width="120dp"        android:layout_height="wrap_content"        android:text="选择低价" />    <NumberPicker        android:id="@+id/np1"        android:layout_width="wrap_content"    android:layout_height="80dp"    android:focusable="true"    android:focusableInTouchMode="true" />    </TableRow><TableRow ><TextView    android:layout_width="120dp"    android:layout_height="wrap_content"    android:text="选择高价" /><NumberPicker    android:id="@+id/np2"    android:layout_width="wrap_content"    android:layout_height="80dp"    android:focusable="true"    android:focusableInTouchMode="true" /></TableRow></TableLayout>

这里面用到了TableLayout

package com.example.numberpicker;import android.app.Activity;import android.os.Bundle;import android.widget.NumberPicker;import android.widget.NumberPicker.OnValueChangeListener;import android.widget.Toast;public class MainActivity extends Activity {    NumberPicker np1,np2;    int minPrice=25,maxPrice=75;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        np1=(NumberPicker) findViewById(R.id.np1);        np1.setMinValue(10);        np1.setMaxValue(50);        np1.setValue(minPrice);//设置当前值        np1.setOnValueChangedListener(new OnValueChangeListener(){            @Override            public void onValueChange(NumberPicker picker, int oldVal,                    int newVal) {                minPrice=newVal;                showSelectedPrice();            }                    });        np2=(NumberPicker) findViewById(R.id.np2);        np2.setMinValue(60);        np2.setMaxValue(100);        np2.setValue(maxPrice);        np2.setOnValueChangedListener(new OnValueChangeListener(){            @Override            public void onValueChange(NumberPicker picker, int oldVal,                    int newVal) {                maxPrice=newVal;                showSelectedPrice();            }});    }    private void showSelectedPrice() {        Toast.makeText(this, "您选择最低价格为:"+minPrice+",最高价格为"+maxPrice,Toast.LENGTH_SHORT).show();            }}

记住需要设置最大值、最小值和当前值,还要有对应的事件监听。

安卓学习第29课——numberPicker