自学内容网 自学内容网

第4天:用户界面和布局补充材料——`MainActivity.kt`解读

下面是对“第4天:用户界面和布局补充材料”该文学习的更深层次的补充材料,对 MainActivity.kt 文件的理解。
下面对`MainActivity.kt’ 文件中每一行进行详细解释:

package com.example.loginapp

这行代码定义了包名,com.example.loginapp是这个类所在的包的名称。

import android.os.Bundle
import android.widget.Button
import android.widget.EditText
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity

这些是导入语句,导入了需要的类和库:

  • Bundle用于传递数据。
  • ButtonEditTextToast用于创建用户界面和交互。
  • AppCompatActivity是一个基类,提供了兼容性支持。
class MainActivity : AppCompatActivity() {

这行代码定义了MainActivity类,它继承自AppCompatActivity,使得它能够使用Android的活动特性。

    override fun onCreate(savedInstanceState: Bundle?) {

重写onCreate方法,这是Activity创建时调用的方法。savedInstanceState用于恢复之前的状态。

        super.onCreate(savedInstanceState)

调用父类的onCreate方法,以确保Activity的基本设置得以完成。

        setContentView(R.layout.activity_login)

设置当前Activity的布局为activity_login.xml文件中定义的布局。

        val etUsername = findViewById<EditText>(R.id.et_username)
        val etPassword = findViewById<EditText>(R.id.et_password)
        val btnLogin = findViewById<Button>(R.id.btn_login)

通过findViewById方法查找布局中的视图组件:

  • etUsername是用户名输入框。
  • etPassword是密码输入框。
  • btnLogin是登录按钮。
        btnLogin.setOnClickListener {

为登录按钮设置点击事件监听器,定义当按钮被点击时执行的代码块。

            val username = etUsername.text.toString()
            val password = etPassword.text.toString()

获取输入框中的文本内容,并转换为字符串,分别存储在usernamepassword变量中。

            if (username.isNotEmpty() && password.isNotEmpty()) {

检查用户名和密码是否不为空。

                Toast.makeText(this, "欢迎,$username!", Toast.LENGTH_SHORT).show()

如果输入有效,显示一个短暂的Toast消息,欢迎用户。

            } else {
                Toast.makeText(this, "请输入用户名和密码", Toast.LENGTH_SHORT).show()
            }

如果用户名或密码为空,显示一个提示用户输入的Toast消息。

        }
    }
}

结束了按钮点击事件处理的代码块,并完成了onCreate方法及MainActivity类的定义。

总体上,这段代码实现了一个简单的登录界面,用户输入用户名和密码后,可以通过点击按钮获得反馈。


原文地址:https://blog.csdn.net/weixin_41644568/article/details/142753486

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!