从TimePicker android获取数据

时间:2012-09-07 17:09:46

标签: android mobile

我正在尝试制作一个非常简单的应用。我只需要从TimePicker元素中获取一段时间,并根据一个值为1-8的Spinner添加30分钟的增量。即,如果用户选择值“3”并且时间'上午8:30',则程序应该

 (30min) * 3 = 90min

然后

 (8:30am) + 90min = 10:00am

有没有人知道如何从Spinner获取输入(值1-8),进行简单计算,然后将其添加到TimePicker的数据输入中?

非常感谢有关此主题的任何帮助。

1 个答案:

答案 0 :(得分:0)

以下是一些事情: 1.设置一个监听器以获取从选择器中选择的值,然后获取时间选择器的值:

public class MainActivity extends Activity{
    Integer[] numbers = new Integer[]{0,1,2,3,4,5,6,7,8};


        final TimePicker tp = (TimePicker)findViewById(R.id.timePicker1);
        tp.setIs24HourView(true);
        Spinner s1 = (Spinner) findViewById(R.id.spinner1);
        ArrayAdapter<Integer> adapter = new ArrayAdapter<Integer>(this, 
                android.R.layout.simple_list_item_single_choice, numbers);

s1.setAdapter(adapter);
        s1.setOnItemSelectedListener(new OnItemSelectedListener(){   
            public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3)

            {
                int index = arg0.getSelectedItemPosition();
                switch(index)
                {
                case 0: 
                    int min = tp.getCurrentMinute();
                    int hour = tp.getCurrentHour();
                    //Do your calculations here etc

                }
            }

            public void onNothingSelected(AdapterView<?> arg0) {


            }
        });

}

  1. 这对你也有帮助,如何为timepicker设置监听器,(如果有人可以帮助我编辑它,不能正确格式化):

    final TimePicker tp = (TimePicker)findViewById(R.id.timePicker1);
            TimePicker.OnTimeChangedListener listen = new  
    
            TimePicker.OnTimeChangedListener() {
    
        public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
            // TODO Auto-generated method stub
            //do some calculations with hourOfDay and minute
    
        }
    };
    

    tp.setOnTimeChangedListener(听);