如何在Android中制作自定义数据选择器,如日期选择器

时间:2017-01-02 12:25:48

标签: android xml android-layout

如何在Android中制作类似日期选择器的自定义数据选择器,以便我可以通过自定义输入或使用按钮( - & +)获取数据(int数据),以便用户可以轻松输入更大的值! 有谁知道如何实现这个? 如果可能,请提供示例代码段。

我想这样做

left - Button
middle - EditText
right - Button

我想要这张图片 -

Like This..

这是Android中日期选择器的示例: -

Android Picker example

4 个答案:

答案 0 :(得分:2)

then try this link

按照链接中的说明尝试文本更改的侦听器,以便在用户更改编辑文本时更新变量,然后变量将保存更改的值,因此您可以使用您的方法更改该变量的值

答案 1 :(得分:1)

  • 根据需要设计一个布局,中间有两个按钮和一个edittext
  • 然后给出一个按钮添加功能和其他减法功能

关注下面提供的小代码段

addButton.setOnClickListener(new OnClickListener(){
public void onClick(){
   int valueInEditText = Integer.parseInt(etReference.getText().toString());
   etReference.setText(String.valueOf(valueInEditText + 1));
}
});

类似地,为变电按钮做。

  

注意:如果您不想要负值,请进行验证。

答案 2 :(得分:1)

您可能希望使用ng-model,以便选择任何值。

外观不一样,但它可能对您有用: https://android--examples.blogspot.com/2015/05/how-to-use-numberpicker-in-android.html

答案 3 :(得分:0)

通过阅读各种帖子,示例,文章和Android文档后,我找到了解决自己问题的方法,可以通过两种方式实现:

  
      
  1. 首先使用NumberPicker
  2.   
  3. 其次,将TextChangedListener添加到EditText
  4.   

以下是我如何实现它的代码:

int noOfCups = 2;
EditText editTextNoOfCups;

editTextNoOfCups = (EditText) findViewById(R.id.edit_text_no_of_cups);
        editTextNoOfCups.addTextChangedListener(new TextWatcher() {
            @Override
            public void beforeTextChanged(CharSequence s, int start, int count, int after) {

            }

            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {

                if(s.length() != 0) {
                    Log.e("pss", String.valueOf(s));
                    noOfCups = Integer.parseInt(String.valueOf(s));
                }

            }

            @Override
            public void afterTextChanged(Editable s) {


            }
        });

以下是官方Android文档的链接: