是否有带有文本框和 2 个旋钮的默认 Android 视图小部件?

Posted

技术标签:

【中文标题】是否有带有文本框和 2 个旋钮的默认 Android 视图小部件?【英文标题】:Is there a default Android view widget with textbox and 2 knobs? 【发布时间】:2012-04-12 20:33:18 【问题描述】:

是否有允许数字文本框的默认视图,可以通过在文本框中键入或通过文本框的两个相邻旋钮来更改。所以基本上,在很棒的 ASCII 图形中:

[]

基本上是一个递增按钮、文本框和递减按钮。

【问题讨论】:

不,SDK 中没有内置的。 不,SDK中没有。但是您可以从一个 textview 和 2 个按钮创建自己的并使其可重复使用。 【参考方案1】:

从 API 级别 11 开始,您现在可以使用 NumberPicker;

您可以找到文档here

你可以找到一个例子here

【讨论】:

默认的 NumberPicker 仅是垂直的,而不是问题中描述的水平。【参考方案2】:

我使用 EditText 和两个 Button 对象的自定义解决方案:

    // This is a textbox group with two knob buttons
    LinearLayout boxGroup = new LinearLayout(this);
    boxGroup.setOrientation(LinearLayout.HORIZONTAL);

    //Stores the current value in the textbox
    final int[] value = 0;

    // Editable text box
    final EditText editText = new EditText(this);
    editText.setText("" + value[0]);

    // Decrement button
    Button decrementButton = new Button(this);
    decrementButton.setText("<");
    decrementButton.setOnClickListener(new View.OnClickListener() 
        public void onClick(View v) 
            value[0]++;
            editText.setText("" + value[0]);
        
    );

    // Increment button
    Button incrementButton = new Button(this);
    incrementButton.setText(">");
    incrementButton.setOnClickListener(new View.OnClickListener() 
        public void onClick(View v) 
            value[0]--;
            editText.setText("" + value[0]);
        
    );

    boxGroup.addView(decrementButton);
    boxGroup.addView(editText);
    boxGroup.addView(incrementButton);

【讨论】:

以上是关于是否有带有文本框和 2 个旋钮的默认 Android 视图小部件?的主要内容,如果未能解决你的问题,请参考以下文章

如何将多个输入(旋钮)添加到单个滑块?

带有文本框和 JS 的提交按钮

C# 使用单个按钮运行 3 个 MYSQL 插入查询 - 来自文本框和列表视图的数据

使带有删除按钮的 UITableView 对所有单元格可见

JS:checkFrom对输入框和文本框的判断总结

检查多个组合框和文本框的内容