Android Studio实验——下拉列表

题目

使用 ArrayAdapter 的方式实现一个城市的下拉列表。

答案

activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="20dp"
    >
<TextView
android:layout_width="182dp"
android:layout_height="37dp"
android:text="城市"
android:textSize="25dp"/>
<Spinner
android:id="@+id/spinner1"
android:layout_width="182dp"
android:layout_height="64dp"
    />
</LinearLayout>

city.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="spinnername">
        <item>北京</item>
        <item>上海</item>
        <item>武汉</item>
        <item>南京</item>
        <item>南昌</item>
        <item>深圳</item>
        <item>长沙</item>
        <item>广州</item>
        <item>昆明</item>
        <item>贵阳</item>
        <item>哈尔滨</item>
        <item>吉林</item>
        <item>苏州</item>
        <item>杭州</item>
        <item>南阳</item>
        <item>石家庄</item>
        <item>济南</item>
        <item>银川</item>
        <item>呼和浩特</item>
        <item>西安</item>
        <item>合肥</item>
        <item>郑州</item>
        <item>青岛</item>
        <item>台北</item>
        <item>兰州</item>
        <item>太原</item>
        <item>乌鲁木齐</item>
        <item>海口</item>
        <item>沈阳</item>
        <item>福州</item>
        <item>南宁</item>
        <item>成都</item>
        <item>长春</item>
        <item>拉萨</item>
        <item>西宁</item>
    </string-array>
</resources>

MainActivity.java

package com.example.myapplication;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
public class MainActivity extends Activity{
    @Override
protected void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Spinner spinner=(Spinner)findViewById(R.id.spinner1);//初始化控件
        String[]city=getResources().getStringArray(R.array.spinnername);//建立数据源
        ArrayAdapter<String>adapter= new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,city);//建立Adapter并且绑定数据源
//第一个参数表示在哪个Activity上显示,第二个参数是系统下拉框的样式,第三个参数是数组。
        spinner.setAdapter(adapter);//绑定Adapter到控件
        }
        }

运行结果

在这里插入图片描述
在这里插入图片描述

下拉列表Android应用程序中常见的用户界面组件之一。下面是一个简单的Android Studio下拉列表代码示例: 1.在布局文件中添加Spinner组件: ```xml <Spinner android:id="@+id/spinner" android:layout_width="match_parent" android:layout_height="wrap_content" /> ``` 2.在Activity中设置下拉列表选项: ```java Spinner spinner = findViewById(R.id.spinner); // 创建一个适配器来为下拉列表提供数据 ArrayAdapter<String> adapter = new ArrayAdapter<>(this,android.R.layout.simple_spinner_item, new String[]{"选项1", "选项2", "选项3"}); // 设置下拉列表的样式 adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // 将适配器设置为下拉列表的数据源 spinner.setAdapter(adapter); ``` 3.处理下拉列表选项的选择事件: ```java spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { // 处理选项选择事件 String selectedItem = (String) parent.getItemAtPosition(position); Toast.makeText(getApplicationContext(), selectedItem + " 被选择了", Toast.LENGTH_SHORT).show(); } @Override public void onNothingSelected(AdapterView<?> parent) { // 当没有选择项时的处理 } }); ``` 这些代码将创建一个包含三个选项的下拉列表,并在选择一个选项时显示一个简短的Toast消息。根据需要,可以更改选项的数量和内容,以及在选项选择事件中执行的操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值