Java 自定义数字选择器
我正在尝试制作我自己的数字选择器,我相信这就是使用Java/Android所说的。 然而,我认为这些原则比Android更适用于Java 我只想让它看起来像下面的文字,但可能使用图像:Java 自定义数字选择器,java,android,Java,Android,我正在尝试制作我自己的数字选择器,我相信这就是使用Java/Android所说的。 然而,我认为这些原则比Android更适用于Java 我只想让它看起来像下面的文字,但可能使用图像: - 5 + 其中,数字范围为0到10 我不确定下面的方法是否是最好的方法,但我用伪代码/Java写了一些东西,希望得到重构或改进的反馈 我在想类似的事情 if(plusButton.isPressed() && buttonValue == 0) { image.setImageRes
- 5 +
其中,数字范围为0到10
我不确定下面的方法是否是最好的方法,但我用伪代码/Java写了一些东西,希望得到重构或改进的反馈
我在想类似的事情
if(plusButton.isPressed() && buttonValue == 0) {
image.setImageResource(R.drawable.number_zero_img) }
else if (plusButton.isPressed() && buttonValue ==1) {
image.setImageResource(R.drawable.number_one_img)}
等等。。。。对于从0到10的所有情况,对于minusButton和PlusButton,但我认为这不是最好的方法。您可以尝试类似的方法 将所有可绘制内容放在hashmap中
HashMap<Integer, Integer > drawables = new HashMap<Integer, Integer>();
drawables.put(1,R.drawable.number_one_img);
drawables.put(2,R.drawable.number_two_img);
//add asll drawables like this
此外,您还需要手动检查它是否超出范围,否则您会将null设置为图像的ImageResource检查它是否超出范围是什么意思?我想让它到目前为止,用户只能点击10或最低到0。它不能超过这些值。在这种情况下,您需要检查两者并设置图像资源。例如,如果buttonValue<0,则设置buttonValue=0&image.setImageResourcedrawables.get0。对于>10也一样,或者使用ArrayList。啊,好点的黑豹!顺便说一句,我刚刚意识到也许我不需要数字图像,但我可能可以使用文本视图,并以这种方式动态更改数字。因此,只有两个图像,一个用于负数,一个用于正数。是的,SparseArray进入了我的脑海,但我猜他想设置不同的图像资源,并将值重置为超出边界的值,如大于10和小于0。如前一评论所述
// on plusButton pressed
image.setImageResource(drawables.get(buttonValue))