2012-09-07 39 views
1

我想做一個非常簡單的應用程序。我只需要從TimePicker元素中抽取一段時間,並根據值爲1-8的微調器將其增加30分鐘。也就是說,如果用戶選擇值「3」和時間「8:30」的程序應該做從TimePicker採取數據android

(30min) * 3 = 90min 

然後

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

沒有人知道如何採取輸入從微調(中值1-8),做一個簡單的計算,然後將它添加到TimePicker的數據輸入中?

任何有關這個主題的幫助將不勝感激。

回答

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. 這可能對你也有幫助,如何設置時間選擇器的監聽器(如果有人可以幫助我並編輯它,無法正確格式化):

    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(listen);