Android Studio常用控件
时间: 2024-12-26 15:18:40 浏览: 6
### Android Studio 中常用 UI 控件及其使用方法
#### TextView 的基本用法
`TextView` 是用于显示文本信息的控件。为了在 Java 代码中访问 `TextView`,需要为其设置唯一的 ID 属性 `android:id`。例如:
```xml
<TextView
android:id="@+id/my_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!" />
```
可以在 Activity 或 Fragment 中通过调用 `findViewById()` 方法来获取此控件实例并修改其内容[^1]。
```java
TextView textView = findViewById(R.id.my_text_view);
textView.setText("New Text");
```
#### ListView 显示图文组合项
对于希望展示带有图片和文字描述列表的情况,可以利用 `ListView` 实现这一功能。每一项布局文件定义了 ImageView 和 TextView 组件排列方式;而 Adapter 负责填充数据源至视图容器内[^2]。
```xml
<!-- item_layout.xml -->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/item_image"
android:layout_width="50dp"
android:layout_height="50dp"/>
<TextView
android:id="@+id/item_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
```
接着编写自定义适配器类继承 BaseAdapter 来关联上述 XML 文件以及实际的数据集。
#### Spinner 下拉菜单的选择交互
`Spinner` 提供了一个简洁的方式让用户从预设集合里挑选单个条目。初始化时需指定一个数组资源作为选项来源,并可通过 ArrayAdapter 将这些字符串映射到组件上[^4]。
```xml
<Spinner
android:id="@+id/spinner_gender"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
```
绑定数据源与监听事件处理逻辑如下所示:
```java
String[] genders = {"Male", "Female"};
ArrayAdapter<String> adapter = new ArrayAdapter<>(context,
android.R.layout.simple_spinner_item, genders);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
Spinner spinnerGender = findViewById(R.id.spinner_gender);
spinnerGender.setAdapter(adapter);
// 设置选择改变后的回调函数
spinnerGender.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
String selectedValue = (String) parent.getItemAtPosition(position);
Log.d("Selected Gender:", selectedValue);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {}
});
```
阅读全文