从数字选择器为微调器指定值

时间:2014-07-21 09:03:59

标签: java android spinner numberpicker

我正在创建一个包含数字选择器的片段,并取消 okay 按钮。每当我单击主活动中的第一个微调器时,微调器都会弹出包含数字选择器的片段。我使用getValue()方法选择数字选择器值,但是如何将此值传递回主活动中的微调器。我尝试使用来自微调器的getposition()方法,但它不起作用,因为我没有使用setAdapter()方法为我的微调器赋值,我只想让我的微调器显示从中检索的唯一值片段编号选择器。

OnCreate功能

s = (Spinner) findViewById(R.id.spinner1);
s.setOnTouchListener(onSpinnerTouchListener);

以下是我的onSpinnerTouchListener:

    LayoutInflater li = LayoutInflater.from(TaxCalc.this); 
    View promptView = li.inflate(R.layout.frag_numpicker, null);

    AlertDialog.Builder builder = new AlertDialog.Builder(TaxCalc.this);
    builder.setView(promptView);

    builder.setTitle("Choose Amount of People");

    builder.setPositiveButton("OK",new DialogInterface.OnClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int which) {
            int value = mNumberPicker.getValue();

        });
    builder.setNegativeButton("NO",new DialogInterface.OnClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int which) {
                alertDialog.cancel();
        }
    });

    mNumberPicker = (NumberPicker) promptView.findViewById(R.id.number_picker);


    array_spinner = new String[30];

    for (i = 0; i < 30 ; i++){
        array_spinner[i] = Integer.toString(i+1);
    }

    mNumberPicker.setMaxValue(array_spinner.length-1);
    mNumberPicker.setMinValue(0);

    mNumberPicker.setWrapSelectorWheel(false);
    mNumberPicker.setDisplayedValues(array_spinner);

    alertDialog =  builder.create();
    alertDialog.show();
    alertDialog.setCanceledOnTouchOutside(false);

0 个答案:

没有答案