android - 创建自定义号码选择器

标签 android widget numberpicker

因此,由于数字选择器的支持库有限(而且它太大了),我正在制作自己的数字选择器。不幸的是,它没有正确显示。

任何修复它的帮助都会很棒。

向上箭头和向下箭头占据相同的空间(相互重叠,因此只有向下箭头出现)。向下箭头应位于代表数字的文本下方。 知道这是为什么吗?

截图如下: number picker is wrong

这是它的代码:

    //"Number-Picker"
    LinearLayout numPicker = new LinearLayout(context);
    numPicker.setOrientation(LinearLayout.VERTICAL);
    numPicker.setLayoutParams(pickerItemParams);
    LinearLayout.LayoutParams upDownParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT, 1.0f);

        //Up button         
        LinearLayout upSpace = new LinearLayout(context);
        ImageView upArrow = new ImageView(context);
        upArrow.setBackgroundResource(R.drawable.arrow_up);
        upSpace.setLayoutParams(upDownParams);
        upSpace.addView(upArrow);

        //text
        LinearLayout numSpace = new LinearLayout(context);
        TextView pickerNum = new TextView(context);
        pickerNum.setText(String.valueOf(textValue));
        numSpace.setLayoutParams(upDownParams);
        numSpace.addView(pickerNum);

        //down
        LinearLayout downSpace = new LinearLayout(context);
        ImageView downArrow = new ImageView(context);
        upArrow.setBackgroundResource(R.drawable.arrow_down);
        downSpace.setLayoutParams(upDownParams);
        downSpace.addView(downArrow);

    numPicker.addView(upSpace);
    numPicker.addView(numSpace);
    numPicker.addView(downSpace);

最佳答案

//down
LinearLayout downSpace = new LinearLayout(context);
ImageView downArrow = new ImageView(context);
upArrow.setBackgroundResource(R.drawable.arrow_down);   // <----- Should be downArrow
downSpace.setLayoutParams(upDownParams);
downSpace.addView(downArrow);

这可能会导致您的向下箭头实际存在,但其 ImageView 缺少其图像。

关于android - 创建自定义号码选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22103861/

相关文章:

安卓 Activity 结果

Android换行符和git

ios - 如何从小部件发送消息到 iOS 应用程序

android - NumberPicker 在 setValue() 后显示错误值

android - 是否可以改变长按时NumberPicker的增量?

android - 压缩后保持图像方向

drop-down-menu - Flutter中如何自定义DropdownButtons和DropdownMenuItems?

dart - 多个小部件与 TabController 使用相同的 GlobalKey

java - 如何将scrollTo()与Spinner一起使用?

Android ellipsize 不能正常工作