Адаптер вообще не должен показывать диалоги. У него одна задача - адаптировать данные под ui.
Можно прокинуть в адаптер колбэк, по которому показывать диалог в активити или во фрагменте.
1) Смотрим в стектрейс ошибки;
2) Видим в первой же строке android.os.NetworkOnMainThreadException;
3) Смотрим, что об этом эксепшене написано в документации;
4) Думаем и решаем проблему.
Calendar - это абстрактный класс. GregorianCalendar его расширяет.
Вам нужно работать с Calendar и не думать о конкретной реализации.
В зависимости от локали может быть возвращён и другой тип, не только GregorianCalendar.