Я знаю, что на этот вопрос уже отвечали несколько раз, и я прочитал большинство из них, но я не понимаю, почему они не работают для меня.
Я создаю что-то вроде Webcrawler, поэтому у меня есть Asynctask, который анализирует HTML-код для нужных мне переменных в одном классе.
Я знаю, что хочу запустить асинтаск через OnClick, что не является проблемой, но я хочу начать другое действие после того, как асинтаск проанализировал HTML-код.
Поскольку это асинтаск, я подумал, что было бы лучше запустить Activity в OnPostExecute.
Мой код очень простой и простой, но я не знаю, почему у меня с ним проблемы.
@Override
protected void onPostExecute(String result){
if(dialog.isShowing()){
dialog.dismiss();
}
startActivity(new Intent(context, DetailView.class));
}
контекст - это переменная, в которой у меня есть контекст MainActivity, и это прекрасно работает для меня в разных точках Asynctask для создания Toast.
DetailView.class — это активность, которую я хочу запустить, и которая отлично работает из MainActivity, но не в этом месте.
Проблема в том, что компилятор говорит мне, что он ожидает android.app.Activity, а фактический аргумент - «новое намерение (контекст, DetailView.class)»
Прошу прощения за такой простой и уже часто отвеченный вопрос, но я не знаю, как заставить его работать.
Спасибо за любой ответ.
this
контекст. Вы пытались заменить его наgetBaseContext()
илиMyActivity.this
? - person Anggrayudi H   schedule 12.04.2015