android预设数字选择器
这是我在stackoverflow上的第一篇帖子,如果我做错了什么,请随时告诉我 我正在制作一个android应用程序。对于我的菜单活动之一,我需要某种小部件,允许用户从预定义的集合中选择一个数字。(即:{5010020050010002000}) 我查看了Spinner、SeekBar和NumberPicker小部件,下面是我发现的每个小部件的问题android预设数字选择器,android,spinner,seekbar,indexed,preset,Android,Spinner,Seekbar,Indexed,Preset,这是我在stackoverflow上的第一篇帖子,如果我做错了什么,请随时告诉我 我正在制作一个android应用程序。对于我的菜单活动之一,我需要某种小部件,允许用户从预定义的集合中选择一个数字。(即:{5010020050010002000}) 我查看了Spinner、SeekBar和NumberPicker小部件,下面是我发现的每个小部件的问题 微调器似乎只允许使用字符串 SeekBar和NumberPicker似乎不容易允许预设值 这些小部件中的任何一个能满足我的需要吗?如果没有,是
- 微调器似乎只允许使用字符串
- SeekBar和NumberPicker似乎不容易允许预设值
Integer.parseInt
函数。我得到一个空指针异常:
02-11 18:21:23.823: E/AndroidRuntime(359): Caused by: java.lang.NullPointerException
02-11 18:21:23.823: E/AndroidRuntime(359): at com.Package.Jigsaw.PuzzleActivity.onCreate(PuzzleActivity.java:20)
PuzzleActivity的第20行是我声明numPc的那一行
以下是相关的代码位:
菜单活动:
我个人会使用微调器,然后对结果调用Integer.parseInt,以获得所需的int 好的,现在有了更多的代码,请看这个答案(它使用一个字符串,但整数是相同的),您使用的putExtra内容不正确
有关更多信息,请参阅。我解决了我的问题 问题在于这一行:
int numPc = (Integer) savedInstanceState.get("numPc");
我应该用这样的方法:
Bundle extras = getIntent().getExtras();
int numPc = (Integer) extras.get("numPc");
好啊我确实想到了这一点,但出于某种原因,Integer.parseInt对我来说无法正常工作。我再试试看。我试过了。我得到一个空指针异常。我将在帖子中添加关于它的信息,因为我还看不到发生了什么,但它与Integer.parseInt无关。是此行的错误:final微调器numPc=(微调器)findViewById(R.id.opt_numPc);或者下一行。我看不出第一行怎么会有空指针。不。错误在代码的第二部分。此行:`int numPc=(Integer)savedInstanceState.get(“numPc”)`
int numPc = (Integer) savedInstanceState.get("numPc");
Bundle extras = getIntent().getExtras();
int numPc = (Integer) extras.get("numPc");