I have a sqlite database that stores all events. I save StartTime and EndTime for each event in a date format.
I have snippets for days with tabs and one activity that adds events. Events are shown in other fragments.
Now I want to check if events overlap with each other and based on which application the message should be displayed.
How to display a message in the activity of an added event when a user saves events.
How can i do this?
I tried this way, but still events are added with the same start and end time:
ImageButton imageButton = (ImageButton)findViewById(R.id.imgbtn_fab); imageButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { eventTitle = title.getText().toString(); EventTableHelper db = new EventTableHelper(getApplication()); List<EventData> events; events = db.getAllEvents(); for (EventData eventData : events) { String datefrom = eventData.getFromDate(); String[] times = datefrom.substring(11, 16).split(":"); minutesFrom = Integer.parseInt(times[0]) * 60 + Integer.parseInt(times[1]); String dateTo = eventData.getToDate();
I get dates like this:
c = Calendar.getInstance(); year = c.get(Calendar.YEAR); month = c.get(Calendar.MONTH); day = c.get(Calendar.DAY_OF_MONTH); hour = c.get(Calendar.HOUR_OF_DAY); minute = c.get(Calendar.MINUTE); df = new SimpleDateFormat("HH:mm a"); datefrom = c.getTime(); startTime = String.valueOf(datefrom); aTime = df.format(datefrom.getTime()); showFromTime.setText(aTime); c.add(Calendar.HOUR_OF_DAY, 1); dateto = c.getTime(); endTime = String.valueOf(dateto); bTime = df.format(dateto.getTime()); showToTime.setText(bTime);
I created an EventTableHelper :
public class EventTableHelper extends SQLiteOpenHelper { private static final String TABLE = "event"; private static final String KEY_ID = "id"; private static final String KEY_TITLE = "title"; private static final String KEY_FROM_DATE = "datefrom"; private static final String KEY_TO_DATE = "dateto"; private static final String KEY_LOCATION = "location"; private static final String KEY_DAY_OF_WEEK = "dayofweek"; public EventTableHelper(Context context) { super(context, Constants.DATABASE_NAME, null, Constants.DATABASE_VERSION); } @Override public void onCreate(SQLiteDatabase db) { } public void createTable(SQLiteDatabase db){ String CREATE_EVENTS_TABLE = "CREATE TABLE " + TABLE+ "(" + KEY_ID + " INTEGER PRIMARY KEY," + KEY_TITLE + " TEXT," + KEY_FROM_DATE + " DATE," + KEY_TO_DATE + " DATE," + KEY_DAY_OF_WEEK + " TEXT " + KEY_LOCATION + " TEXT" + ")"; db.execSQL(CREATE_EVENTS_TABLE); }
I tried using the getAll event function in activity to get data.
Edit: Here is my current code.
@Override public void onClick(View v) { eventTitle = title.getText().toString(); EventTableHelper db = new EventTableHelper(getApplication()); List<EventData> events;