2012-10-05 164 views
0

我希望一個簡單的問題。 如何將輸入到DatePicker的日期與當前日曆日期進行比較?如何比較DatePicker日期和日曆日期

解釋一下,如果我把DatePicker的日期存儲爲一個字符串,我怎麼能比較它到android系統日曆上的當前日期?

protected void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.dpresult); 

textView1 = (TextView)findViewById(R.id.textView1); 

button1 = (Button)findViewById(R.id.button1); 
button1.setOnClickListener(new OnClickListener(){ 

public void onClick(View v){   

    Intent intent = new Intent(datePickerResult.this, calander.class); 

    startActivity(intent); 
} 
}); 

Bundle extras = getIntent().getExtras(); 

year = extras.getInt("year"); 
day = extras.getInt("day"); 
month = extras.getInt("month"); 

textView1.setText(day+""); 

} }

+0

你是什麼日期選擇器日期樣子?你可以放棄嗎? –

+0

您是否使用標準的DatePicker小部件?該處理程序返回3個整數,爲什麼將其轉換爲一個字符串? – aamit915

回答

2

您可以將您的字符串轉換爲日期參見this

,並嘗試這個compareTo

date1.compareTo(date2); 
+0

OP表示'如果我將DatePicker日期存儲爲字符串' –

+0

@LalitPoptani謝謝。請參閱編輯答案 – MAC

3

比如你從日期選擇器,然後

String sDate = "05-10-2012"; // suppose you create this type of date as string then 

SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy"); 

Date date = sdf.parse(sDate); 

Calendar c = Calendar.getInstance(); 

c.getTime().compareTo(date); 

它有像字符串的日期取決於您的字符串或如何可以得到?你可以從日期選擇單獨獲得所有然後在日曆情況下直接設置

Calendar my = Calendar.getInstance(); 
my.set(year, month, day); 

現在比較

my.compareTo(Calendar.getInstance()); 
+0

@patrik,謝謝,你說我可以直接從日期選擇器比較它們,例如,如果我從日期選擇器得到的日期爲:getday,getmonth,getyear等,那麼我將如何比較它們? –

+0

你可以在問題中發佈你的代碼嗎? – Pratik

+0

確定將發佈快速示例現在獲取日期選擇器結果,從字符串更改爲標準整數,所以基本上只需要比較那些日曆,謝謝 –