package com.example.myapplication;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.view.ViewGroup;import android.widget.*;public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); LinearLayout layout = new LinearLayout(this); // 设置该Activity显示layout super.setContentView(layout); layout.setOrientation(LinearLayout.VERTICAL); // 创建一个TextView TextView show = new TextView(this); // 创建一个按钮 Button bn = new Button(this); bn.setText(R.string.ok); bn.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams .WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT)); // 向layout容器中添加TextView layout.addView(show); // 向layout容器中添加按钮 layout.addView(bn); // 为按钮绑定一个事件监听器 bn.setOnClickListener((view) ->{ show.setText("Hello , Android , " + new java.util.Date()); }); }}运行结果
时间: 2025-03-23 09:18:23 浏览: 90
上述代码是一个简单的Android应用程序,它实现了点击按钮后更新文本的功能。下面是关于程序运行结果以及其工作原理的详细说明:
### 运行效果
当用户启动这个应用时:
1. 屏幕上会显示一个垂直布局(`LinearLayout`),其中包含两个控件——一个 `TextView` 和一个 `Button`。
2. 按钮的文字内容由资源文件中的字符串 `"ok"` 提供。
3. 用户点击按钮时,`TextView` 的文字会被动态设置为类似下面的内容:
```
Hello , Android , Mon Jan 09 14:57:16 CST 2023
```
(日期和时间取决于当前系统的时间)
---
### 工作流程分析
#### 初始化阶段
- **创建根视图**
程序首先通过 `new LinearLayout(this)` 创建了一个线性布局,并将其作为主界面的核心容器。
- **配置方向**
调用 `layout.setOrientation(LinearLayout.VERTICAL)` 将该容器的方向设为“纵向排列”。
- **添加组件到布局**
- 使用 `new TextView(this)` 实例化了一个用于展示信息的 `TextView` 控件;
- 使用 `new Button(this)` 实例化了按钮并设置了初始文案。
- 最终将这两个控件依次加入到了之前声明好的线性布局中 (`addView()` 方法完成此操作)。
#### 功能实现部分
- 当按下按钮触发 `bn.setOnClickListener(...)` 中定义的操作之后,
它会让屏幕上方那个原本空白状态下的 `show` 对象显现出一条结合了固定前缀及实时生成时间戳的消息串:"Hello, Android," 加上实际获取时刻的具体时间表达式。
---
### 注意事项
如果希望看到确切的效果,则需要保证项目能够正常编译、部署至模拟器或真实设备上执行;此外还需确认所有引用资源均存在有效值如 R.string.ok 应指向合法字符序列等条件满足才能呈现预期成果。
阅读全文
相关推荐


















