Android Kotlin comienza una nueva actividad

Quiero comenzar otra actividad en Android pero obtengo este error:

Por favor especifique la invocación del constructor; clasificador 'Página2' no tiene un object complementario

después de instanciar la class Intent . ¿Qué debo hacer para corregir el error? Mi código:

 class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) } fun buTestUpdateText2 (view: View) { val changePage = Intent(this, Page2) // Error: "Please specify constructor invocation; // classifier 'Page2' does not have a companion object" startActivity(changePage) } } 

Para iniciar una Activity en Java, escribimos Intent(this, Page2.class) , básicamente tienes que definir el Context en el primer parámetro y la class de destino en el segundo parámetro. De acuerdo con el método de Intent en el código fuente –

  public Intent(Context packageContext, Class<?> cls) 

Como puede ver, tenemos que pasar el tipo Class<?> En el segundo parámetro.

Al escribir Intent(this, Page2) nunca especificamos que vamos a pasar la class, estamos tratando de pasar el tipo de class que no es aceptable.

Use ::class.java que es una alternativa de .class en kotlin. Usa el código a continuación para comenzar tu Activity

 Intent(this, Page2::class.java) 

Puedes probar esto,

 val intent = Intent(this, SecondActivity::class.java) intent.putExtra("key", value) startActivity(intent) 

Prueba esto

 val intent = Intent(this, Page2::class.java) startActivity(intent) 

Esto se debe a que su class Page2 no tiene un object complementario que sea similar a la static en Java, para usar su class. Para aprobar su class como argumento para Intent , tendrá que hacer algo como esto

 val changePage = Intent(this, Page2::class.java) 
  • Obtención de class no encontrada Excepción al usar KotlinJsonAdapterFactory () en Moshi 1.5 con Kotlin
  • ¿Por qué no mira hacia adelante y mira detrás del trabajo de Regex en Kotlin?
  • Clases internas de Kotlin en Java visibles públicamente
  • Observable.just () que devuelve Unidad en Kotlin
  • Gradle no puede encontrar testings
  • La function Kotlin requiere nada, pero se define como un tipo diferente
  • ¿Kotlin tiene un recolector de basura? Si es así, ¿en qué algorithm está basado?
  • ¿Cuál es el lugar correcto para comenzar un service en la architecture MVVM Android?
  • El complemento IdeaVim de IntelliJ inhabilita la conversión de Java a Kotlin
  • Android muestra una advertencia aparentemente inofensiva cuando se reproduce audio?
  • Dagger2 no genera classs Dagger