【Android】基础—常用控件、Intent

功能组件

按钮

在layout里进行配置

<LinearLayout
    android:layout_width="match_parent"     <!-- 设置LinearLayout的宽度与父容器相同,填满可用空间 -->
    android:layout_height="match_parent">   <!-- 设置LinearLayout的高度与父容器相同,填满可用空间 -->

    <Button
        android:id="@+id/button_1"         <!-- 指定按钮的唯一标识符为button_1,可以在代码中引用 -->
        android:layout_width="match_parent" <!-- 设置按钮的宽度与其父布局(LinearLayout)相同,填满可用空间 -->
        android:layout_height="wrap_content"<!-- 设置按钮的高度根据其内容自适应,包裹内容 -->
        android:text="Button 1">            <!-- 按钮显示的文本内容为 "Button 1" -->

    </Button>                               <!-- 结束按钮的定义 -->

</LinearLayout>                             <!-- 结束LinearLayout的定义 -->

通知小信息(弹出后消失)

在创建的Activity里进行重写

@Override
protected void onCreate(Bundle savedInstanceState) {
   
    super.onCreate(savedInstanceState); // 调用父类的 onCreate 方法,执行默认的初始化操作
    setContentView(R.layout.first_layout); // 设置当前 Activity 的布局文件为 first_layout.xml

    // 通过 findViewById 找到布局文件中定义的按钮,并将其赋给 button1 变量
    Button button1 = (Button) findViewById(R.id.button_1);

    // 设置按钮的点击事件监听器
    button1.setOnClickListener(new View.OnClickListener() {
   
        @Override
        public void onClick(View v) {
   
            // 当按钮被点击时执行的操作
            Toast.makeText(FirstActivity.this, "别点了,再点我直接爆炸", Toast.LENGTH_SHORT).show();
            // 弹出一个短暂的提示信息,显示 "别点了,再点我直接爆炸"
        }
    });
}

菜单

在res里添加menu,在menu中进行内容编写

<?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"/>           <!-- 菜单项显示的标题为 "Add" -->

    <item
        android:id="@+id/remove_item"   <!-- 菜单项的唯一标识符,可以在代码中引用 -->
        android:title="Remove"/>        <!-- 菜单项显示的标题为 "Remove" -->

</menu>

在创建的Activity中先重写onCreateOptionsMenu

@Override
public boolean onCreateOptionsMenu(Menu menu) {
   
    // 加载菜单布局文件到当前的选项菜单中
    getMenuInflater().inflate(R.menu.main, menu);
    return true; // 返回 true 表示菜单已经成功创建并显示在 Activity 上
}

显示菜单后我们还需要给菜单添加响应时间(这里用上文的Toast举例)

@Override
public boolean onOptionsItemSelected(MenuItem item) {
   
    // 当用户点击某个选项菜单项时调用此方法,并传入被点击的 MenuItem 对象 item

    // 判断被点击的菜单项的唯一标识符(ID)是否等于 R.id.add_item
    if (item.getItemId() == R.id.add_item) {
   
        // 如果是 add_item 被点击了,则显示一个短暂的提示信息“你选了Add”
        Toast.makeText(this, "你选了Add", Toast.LENGTH_SHORT).show();
    } 
    // 判断被点击的菜单项的唯一标识符(ID)是否等于 R.id.remove_item
    else if (item.getItemId() == R.id.remove_item) {
   
        // 如果是 remove_item 被点击了,则显示一个短暂的提示信息“你选了Remove”
        Toast.makeText(this, "你选了Remove", Toast.LENGTH_SHORT).show();
    }

    return true; // 返回 true 表示事件已经处理完成
}

Intent

显式Intent

// 创建一个 Intent 对象,用于启动 SecondActivity
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);

// 使用该 Intent 启动 SecondActivity
startActivity(intent);

隐式Intent

<activity
    android:name=".SecondActivity"
    android:exported="true" >

    <!-- 设置 SecondActivity 的 intent-filter -->
    <intent-filter>
        <action android:name="com.example.activitytest.ACTION_START" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>

            
Intent intent = new Intent("com.example.activitytest.ACTION_START");
startActivity(intent);           

每个Intent只能对应一个action,但是可以指定多个category。

可以再添加一个category:

public void onClick(View
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值