Android Intents и Scala

1

Я пытаюсь преобразовать следующий учебник, http://savagelook.com/blog/android/swipes-or-flings-for-navigation-in-android, в код Scala для Android. У меня все хорошо работает, за исключением класса MyGestureDetector, который я еще не выполнил, но у меня уже есть ошибки. Мой код выглядит следующим образом

class MyGestureDetector extends SimpleOnGestureListener {
  override def onFling(e1:MotionEvent, e2:MotionEvent, velocityX:Float, velocityY:Float):Boolean ={
  var intent:Intent = new Intent (MainActivity.this.getBaseContext(), MainActivity.class)

  true  
} 

override def onDown(e:MotionEvent):Boolean = {
  true
} 
}

Мой код дает мне красную подчеркивание в MainActivity.this.getBaseContext() и MainActivity.class. Красный x рядом с строкой говорит о том, что MainActivity не является закрывающим классом, что ожидался идентификатор, но.class найден, и что MainActivity не является значением. Я импортирую следующие пакеты

import android.app.Activity
import android.os.Bundle
import android.content.Intent
import android.view.GestureDetector
import android.view.GestureDetector.SimpleOnGestureListener
import android.view.MotionEvent
import android.view.View

Может ли кто-нибудь указать, где я ошибаюсь? Спасибо вам всем

Майкл

  • 1
    Попробуйте classOf[MainActivity] вместо MainActivity.class .
  • 0
    Это сработало с var intent: Intent = new Intent (classOf [MainActivity] .getBaseContext (), classOf [MainActivity]) второй аргумент. У меня все еще есть красная линия под частью getBaseContext ... какие-нибудь предложения?
Показать ещё 3 комментария
Теги:
android-intent

1 ответ

1

Попробуй это.:

val myIntent = new Intent(CurrentActivity.this, classOf[DestinationActivity])

Первым параметром должен быть экземпляр текущей активности. (Поскольку Activity расширяет контекст, и требуется текущий контекст)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню