java - 数字选择器从相反方向增加数字
问题描述
直到现在我的号码选择器开始从上到下增加我的号码。我可以把它改成相反的方向吗?
XML
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<NumberPicker
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:minWidth="25px"
android:minHeight="25px"
android:id="@+id/numberPicker1" />
</RelativeLayout>
活动
val numberPicker = (NumberPicker)FindViewById(Resource.Id.numberPicker1);
numberPicker.MaxValue = 100;
numberPicker.WrapSelectorWheel = false;
请看下图:
解决方案
解决方案:
您可以自己定义顺序。用于SetDisplayedValues
将具有字符串值的数组设置为numberPicker
. 然后 的显示值numberPicker
将与数组中值的顺序相同。
例如:
如果定义数组
String[] numbers = new string[] { "10", "9", "8", "7", "6", "5", "4", "3", "2","1" };
,然后设置numberPicker.SetDisplayedValues(numbers);
和numberPicker.Value=1;
,显示值将从 10 到 1。
这是您的情况的解决方案:
NumberPicker numberPicker = (NumberPicker)FindViewById(Resource.Id.numberPicker1);
//define your own array here
//String[] numbers = new string[] { "10", "9", "8", "7", "6", "5", "4", "3", "2", "1", "0-" };
ArrayList list = new ArrayList();
for (int i = 100; i > 0; i--)
{
list.Add (Convert.ToString(i));
}
string[] numbers = (string[])list.ToArray(typeof(string));
numberPicker.SetDisplayedValues(numbers);
//set the min value
numberPicker.MinValue=1;
numberPicker.MaxValue=numbers.Length;
//set the default value
numberPicker.Value=1;
numberPicker.WrapSelectorWheel = false;
推荐阅读
- java - Predix Cloud Foundry App Heap 内存不足问题
- opencv - 从 Emgu::CV::Mat 获取 C++ OpenCV Mat 类型
- php - 卷曲请求到 PHP 卷曲请求
- excel - 有没有办法将 FALSE 值带到列的顶部?
- android - 如何使用子片段在自定义操作栏中更改文本视图的文本
- r - readOGR 无法识别投影
- coq - Coq 统一记录参数
- php - Laravel:CRUD 更新表单
- c# - c#InstalledFontCollection 不显示所有字体,如 MS Word
- go - 在 Golang 中是否存在与 strings.Repeat("0", 3) (检测前导零的数量)相反的嵌入?