Вы все еще можете использовать это, чтобы поймать исключение, независимо от того, как оно генерируется, через startActivity
или иным способом.
try {
// Your Code Here
} catch (ActivityNotFoundException e) {
Toast.makeText(this, "Mail client not found", Toast.LENGTH_LONG).show();
}
Я думаю, что он не запускается, потому что вы загружаете элемент управления в событие prerender вашей страницы. При обратной передаче элемент управления теряется, поскольку для него нет состояния просмотра. Поэтому нет никакого контроля, чтобы запустить его событие. Попробуйте загрузить элемент управления в событие инициализации страницы. Дайте нам знать, что происходит!
Обработка событий обратной передачи выполняется перед рендерингом, поэтому в вашем случае элемент управления отсутствует на странице.
События жизненного цикла запускаются в следующем порядке (пропущено несколько):
И обработка событий выполняется между Load и PreRender (если некоторые события изменяют способ отображения страницы, это имеет смысл).
Так что просто переместите ваш код, который загружает элемент управления Retry, в Load или Init.
Похоже, что элемент управления не добавляется после каждого поста назад, я бы вынул оператор if на странице aspx, чтобы увидеть, решает ли это проблему ... я предполагаю, что Retry is кнопка?