android 布局

按钮

 

<Button
            android:id="@+id/Button1"  // 唯一标识符
            android:layout_width="match_parent"  
        // layout_width 指定当前元素的宽度
        // match_parent 让当前元素和父元素一样宽
            android:layout_height="wrap_content"
        // layout_height 指定当前元素的高度
        // 表示当前元素的高度只要能刚好包含里面的内容
            android:text="Button 1"
        // 指定了当前元素中显示的内容
    />

 

 

回到FirstActivity, 在onCreate()方法中加入如下代码:

class FirstActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
    
        setContentView(R.layout.first_layout)
    // 调用 setContentView()方法来给当前的Activity加载一个布局

    }
}

 

 

在AndroidManifest为程序配置主Activity

<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">

    //  给主Activity指定的label不仅会成为标题栏中的内容,还会成为启动器中应用程序显示的名称 <activity android:name=".FirstActivity" android:label="This is FirstActivity">       
    //配置主Activity方法
<intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> </application>

 

在Activity中使用Toast

Toast是Android系统提供的一种非常好的提醒方式

在onCreate()方法中添加如下代码

override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.first_layout)
// 在Activity中,可以通过findViewById()方法获取在布局文件中定义的元素, Kotlin无法自动推导出它是一个Button还是其他控件,所以要将button1变量显示的声明为Button类型 val button1: Button
=findViewById(R.id.Button1)
// 用setOnClickListener()方法为按钮注册一个监听器 button1.setOnClickListener{
// makeText()需要有三个参数 1.Toast要求的上下文,2.Toast显示的文本内容 3. Toast显示的时常 Toast.makeText(
this, "You clicked Button 1", Toast.LENGTH_SHORT).show() } }

在Activity中使用Menu

1. 首先在res目录下新建一个menu木露露文件夹,接着在这个文件夹下新建一个名叫main的菜单文件

2.在main.xml中添加如下代码

<menu xmlns:android="http://schemas.android.com/apk/res/android">
//item标签用来创建具体的某一个菜单项
<item android:id="@+id/add_item"  // android:id给这个菜单项指定一个唯一的标识符 android:title="Add"    // 通过android:title给这个菜单项指定一个名称 /> <item android:id="@+id/remove_item" android:title="Remove" /> </menu>

3. 回到FirstActivity中来重写onCreateOptionMenu()方法,重写方法可以使用Ctrl + O快捷键

在onCreateOptionsMenu()方法中编写如下代码

override fun onCreateOptionsMenu(menu: Menu?): Boolean {
//第一个参数用来指定我们通过哪一个资源文件来创建菜单
// 第二个参数用于指定我们的菜单项中将添加到哪一个Menu对象 menuInflater.inflate(R.menu.main, menu)
// 返回true显示菜单
// 返回false隐藏菜单 return true }

4. 定义菜单响应事件

在FirstActivity中重写onOptionsItemSelected()方法

override fun onOptionsItemSelected(item: MenuItem): Boolean {
  // 通过调用item.itemId来判断点击的是哪一个菜单项, 这里实际上背后调用的是item的getItemId()方法,是Kotlin的语法糖 when (item.itemId){ R.id.add_item
->Toast.makeText(this, "You clicked Add",Toast.LENGTH_SHORT).show() R.id.remove_item->Toast.makeText(this, "You clicked Remove", Toast.LENGTH_SHORT).show() } return true }

销毁一个Activity

1.按下Bcak键

2.修改按钮监听器中的代码

button1.setOnClickListener{
//            Toast.makeText(this, "You clicked Button 1", Toast.LENGTH_SHORT).show()
            finish()
        }

 

posted @ 2020-09-28 23:41  hulian425  阅读(123)  评论(0编辑  收藏  举报