notas de estudio de Android 1.Actividad

Creación de actividad

Cualquier actividad en el proyecto debe anular el método onCreate ()

class FirstActivity: AppCompatActivity () { 
    override fun onCreate (savedInstanceState: Bundle ? ) {
         super .onCreate (savedInstanceState) 
}

La implementación predeterminada puede llamar a la clase primaria onCreate ()

Todas las actividades deben estar registradas en AndroidMainfest.xml

<? xml version = "1.0" encoding = "utf-8" ?> 
< manifest xmlns: android = "http://schemas.android.com/apk/res/android" 
    package = "com.example.myapplication" > 

    < application
         android: allowBackup = "true" 
        android: icon = "@ mipmap / ic_launcher" 
        android: label = "@ string / app_name" 
        android: roundIcon = "@ mipmap / ic_launcher_round" 
        android: supportsRtl = "true" 
        android: theme = "@ style / AppTheme " > 
        <actividad > 
    </ aplicación > 

</ manifiesto >

Regístrese en la etiqueta de la aplicación a través de </ activity> , donde .FirstActivity omite el nombre del paquete

Configurar la actividad principal

Añadir etiqueta <intent-filter>

<? xml version = "1.0" encoding = "utf-8" ?> 
< manifest xmlns: android = "http://schemas.android.com/apk/res/android" 
package = "com.example.myapplication" > 

< application
     android: allowBackup = "true" 
    android: icon = "@ mipmap / ic_launcher" 
    android: label = "@ string / app_name" 
    android: roundIcon = "@ mipmap / ic_launcher_round" 
    android: supportsRtl = "true" 
    android: theme = "@ style / AppTheme " > 
    < android de actividad :
        android: label: = "First Activity"> 
        < intent-filter > 
            < action android: name = "android.intent.action.MAIN" /> 
            < category android: name = "android.intent.category.LAUNCHER" /> 
        < / intent-filter > 
    </ activity > 
</ application > 

</ manifest >

Puede usar el atributo de etiqueta para establecer el contenido de la barra de título

Usar tostadas en la actividad

class FirstActivity: AppCompatActivity () { 

    override fun onCreate (savedInstanceState: Bundle ? ) {
         super .onCreate (savedInstanceState) 
        setContentView (R.layout.first_layout) 
        button1.setOnClickListener { 
            Toast.makeText ( this , "you are feo" , Toast. ) .show () 
        } 

    } 
}

Este es el contexto, pasando en la Actividad actual. Toast.LENGTH_SHORT es la duración de visualización. Obtenga el objeto Toast y llame al método show () para mostrar

Usar menú en actividad

Cree una nueva carpeta de menú en el directorio res y cree un archivo de recursos de menú

<? xml version = "1.0" encoding = "utf-8" ?> 
< menu xmlns: android = "http://schemas.android.com/apk/res/android" > 
    < item
         android: id = "@ + id / add_item " 
        android: title =" Add " /> 
    < item
         android: id =" @ + id / remove_item " 
        android: title =" Remove " /> 
</ menu >

Use <item para agregar un elemento de menú, use el atributo title para especificar el nombre

Para usar el menú, anule el método onCreateOptionsMenu en Activity

anular la diversión onCreateOptionsMenu (menu: Menu? ): Boolean { 
        menuInflater.inflate (R.menu.main, menu) 
        return  true ; 
    }

Use el archivo de recursos R.menu.main para agregar al objeto de menú

Para que el menú responda a los eventos, anule onOptionsItemSelected

anular la diversión onOptionsItemSelected (item: MenuItem): Boolean { 
        when (item.itemId) { 
            R.id.add_item -> Toast.makeText ( this , "sb" , Toast.LENGTH_SHORT) .show () 
            R.id.remove_item -> Toast.makeText ( this , "hah" , Toast.LENGTH_SHORT) .show () 
        } 
        return  super .onOptionsItemSelected (item) 
    }

 

Use finish () para destruir Activity

Carga de archivo de diseño

Cree el archivo de diseño de la Actividad en el directorio res / layout. Después de escribir el diseño, debe cargarlo en onCreate of the Activity

class FirstActivity: AppCompatActivity () { 

    override fun onCreate (savedInstanceState: Bundle ? ) {
         super .onCreate (savedInstanceState) 
        setContentView (R.layout.first_layout) 
}
setContentView (R.layout.first_layout) Cargue el archivo de diseño y 

use la intención para cambiar la Actividad
1. Intención explícita
button1.setOnClickListener { 
            Toast.makeText ( esto , "eres feo" , Toast.LENGTH_SHORT) .show () 
            val intent = Intent ( this , SecondActivity :: class .java) 
            startActivity (intent) 
        }
 

2. Intención implícita

Especifique la acción y la categoría, deje que el sistema encuentre la actividad adecuada para comenzar

button1.setOnClickListener { 
            val intent = Intent (Intent.ACTION_VIEW) 
            intent.data = Uri.parse ("https://www.baidu.com" ) 
            startActivity (intent) 
        }

Pase datos a la siguiente actividad

Almacene temporalmente datos en intención a través de putExtra
button1.setOnClickListener { 
            val data = "jajaja" 
            val intent = Intención ( esto , SecondActivity :: class .java) 
            intent.putExtra ( "data" , data) 
            startActivity (intent) 
        }
 

Recibir

class SecondActivity: AppCompatActivity () { 

    override fun onCreate (savedInstanceState: Bundle ? ) {
         super .onCreate (savedInstanceState) 
        setContentView (R.layout.activity_second) 
        val data = intent.getStringExtra ("data" ) 
        Toast.makeText ( this , "data es $ data " , Toast.LENGTH_SHORT) .show () 
    } 
}

Devolver datos a la actividad anterior

Utilice startActivityForResult

button1.setOnClickListener { 
            val intent = Intent ( this , SecondActivity :: class .java) 
            startActivityForResult (intent, 1 ) 
        }
button2.setOnClickListener { 
            val intent = Intent () 
            intent.putExtra ( "data_return", "haahahah" ) 
            setResult (Activity.RESULT_OK, intent) 
            finish () 
        }
anular diversión enActivityResult (requestCode: Int, resultCode: Int, data: Intent? ) {
         super .onActivityResult (requestCode, resultCode, data) 
        when (requestCode) {
             1 -> if (resultCode == Activity.RESULT_OK) { 
                val return_data = data ? .getStringExtra ("data_return" ) 
                Toast.makeText ( esto , "$ return_data " , Toast.LENGTH_SHORT) .show () 
            } 
        } 
    }

 

 

 

Supongo que te gusta

Origin www.cnblogs.com/hzoi-poozhai/p/12682497.html
Recomendado
Clasificación