2016-11-26 60 views
0

我在我的活動中有兩個日期選擇器。 我想根據datePickerA對話框中選擇的日期自動更新datePickerB對話框的開始日期。我使用setMinDate for datePickerB。 setMinDate第一次正常工作。但無法更新或重置datePickerB的想法,以便在datePickerA中進行連續更新。請幫助。Android datepicker setmindate

搜索所有可能的解決方案,但沒有用。請幫助

+0

您的測試代碼在哪裏? – Sachith

+0

郵政編碼更好的解釋 –

回答

0

以下是我的代碼。在oncreate中使用的代碼得到執行,但在HandleResponse中調用了進一步的setMinDate函數(這是在設置了datepickerA後被調用的函數)。

calendar.add(Calendar.DAY_OF_YEAR, 1); 
    Date tomorrow = calendar.getTime(); 
    long t = tomorrow.getTime(); 

    fromDatePicker.getDatePicker().setMinDate(t); 

// toDatePicker.getDatePicker()setMinDate(T)。

public void HandleResponse(Response response) 
{ 
    String sqlRes = ""; 


    try { 

     String sResJson = response.body().string(); 

     JSONObject jReader = new JSONObject(sResJson); 
     JSONObject jRes = jReader.getJSONObject("Result"); 
     sqlRes = jRes.getString("res"); 
     final int sqlMilkQty = jRes.getInt("qty"); 
     String enddate = jRes.getString("date"); 
     Date d = null; 
     SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 
     try { 
      d = sdf.parse(enddate); 

     } catch (ParseException e) { 
      e.printStackTrace(); 
     } 

      if (d != null && fromDate!= null) { 

       long t = d.getTime(); 
       long t1 = fromDate.getTime(); 

       toDatePicker.getDatePicker().setMinDate(t1); 
       toDatePicker.getDatePicker().setMaxDate(t); 


      } 

     Handler mainHandler = new Handler(Looper.getMainLooper()); 


     if (sqlRes.equals("PASS")) 
     { 
      mainHandler.post(new Runnable() { 
       @Override 
       public void run() { 
        milkQuantity = sqlMilkQty; 
        txtMilkQuantity.setText(String.valueOf(milkQuantity)); 

       } 
      }); 

     } 
     else { 

     } 


    } catch (IOException e) { 
     DisplayError(); 
    } 
    catch (JSONException e) { 
     DisplayError(); 
    } 
} 
+0

對此的任何支持? – AndroidNewBee