Попытка открыть действие, если оператор if верен

Я работаю над примером судоку из книги Hello Android и хотел бы создать диалоговое окно с поздравлениями, когда игра будет завершена. В классе игры я проверяю, есть ли пустые квадраты, а затем в классе PuzzleView я пытаюсь проверить, решена ли игра. Если игра завершена, она должна показать сообщение, но я получаю сообщение об ошибке, когда создаю намерение.

Конструктор Intent(PuzzleView, Class<Congratulations>) не определен.

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) 
{

  if (game.isSolved()== true)
  {

     Intent i = new Intent(PuzzleView.this, Congratulations.class);
     startActivity(i); 
  }
  else
  {
     Log.d(TAG, "onKeyDown: keycode=" + keyCode + ", event="
     + event);
     /*MORE CODE GOES HERE*/

Кто-нибудь может помочь, пожалуйста? РЕДАКТИРОВАТЬ: - Я думаю, что основная проблема, с которой я столкнулся, заключается в попытке запустить активность в классе, который расширяет представление. Есть ли способ сделать это?


person WillNZ    schedule 29.08.2012    source источник


Ответы (1)


1. Убедитесь, что у классов PuzzleView и Congratulations есть расширенная активность.

2. Убедитесь, что вы определили эти Действия в файле AndroidManifest.xml.

Думал, вы это знаете, но все же я покажу синтаксис Intent....

Intent i = new Intent(Your_Current_Activity.this, Your_Desired_Activity.class);

startActivity(i);
person Kumar Vivek Mitra    schedule 29.08.2012
comment
Привет. Спасибо за быстрый ответ. Класс Congratulations расширяет Activity, но PuzzleView расширяет View - person WillNZ; 29.08.2012