Ok I managed to do it in this way;
Im model class;
public boolean isLocked() {
boolean returnCode = true;
// current date & time
Calendar now = Calendar.getInstance();
// parse date & time from database
String trainingStartDate = this.getDate();
String trainingStartTime = this.getStartTime();
String strDateTime = trainingStartDate + " " + trainingStartTime;
Calendar training = Calendar.getInstance();
try {
training.setTime(new SimpleDateFormat("MM-dd-yyyy HH:mm")
.parse(strDateTime));
long difference = training.getTimeInMillis()
- now.getTimeInMillis();
if (difference < 15 * 60 * 1000) { // less than 15 minutes
returnCode = false;
}
} catch (java.text.ParseException e) {
e.printStackTrace();
//returnCode = false;
}
return returnCode;
}
In Activity class;
private void startTraining() {
// parse date & time from database
String trainingStartDate = SharedMemory.getInstance()
.getCurrentTraining().getDate();
String trainingStartTime = SharedMemory.getInstance()
.getCurrentTraining().getStartTime();
if ((currentTraining).isLocked()){
Toast.makeText(
getApplicationContext(),
"The training starts on" + " " + trainingStartDate
+ " at " + trainingStartTime,
Toast.LENGTH_SHORT).show();
}else{
Intent intent = new Intent(getApplicationContext(),
TraineeListActivity.class);
MainActivity.this.startActivity(intent);
finish();
}
}
In Adapter class;
// If training is locked, then display the lock picture
if (trainingsList.get(position).isLocked()) {
holder.lockImage.setBackgroundResource(R.drawable.lock);
// else display the unlock picture
} else {
holder.lockImage.setBackgroundResource(R.drawable.unlock);
}