Andriod开发 Adapter ArrayAdapter

news/2024/12/23 6:01:07/

一、Adapter

Adapter 是一个非常重要的组件,用于将数据与视图进行绑定。

一般的用法是一个View中要显示多个布局相同但数据不同的item(例如论坛界面的多个帖子,购物车里的多个商品)。

可以将item的布局和数据输入Adapter,View使用Adapter,就可以得到多个布局相同、内容不同的item了。

Adapter 通常用于在 ListView、RecyclerView、Spinner 等组件中显示数据。Adapter 的作用是将数据转换成视图,以便用户可以查看和操作数据。

Adapter 有多种类型,包括 ArrayAdapter、CursorAdapter、SimpleAdapter、BaseAdapter 等。

不同的 Adapter 类型适用于不同的数据源和视图类型。

 二、ArrayAdapter示例

 ArrayAdapter是最简单的适配器,只展示一行文字。通过使用ArrayAdapter,可以快速了解适配器的使用方法。

1)item的布局文件

因为 ArrayAdapter每个item只显示一行文字,所有放一个TextView就可以了

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="50dp"android:textSize="30dp"android:textColor="@color/purple_200"android:text="test"android:gravity="center"></TextView>

 2)View使用Spinner,有下拉列表和对话框两种模式

<?xml version="1.0" encoding="utf-8"?>
<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"tools:context=".SpinnerActivity"><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="Spinner Drop Down"android:textSize="30dp" /><Spinnerandroid:id="@+id/sp_drop"android:layout_width="match_parent"android:layout_height="30dp"android:spinnerMode="dropdown"></Spinner><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="Spinner dialog"android:textSize="30dp" /><Spinnerandroid:id="@+id/sp_dialog"android:layout_width="match_parent"android:layout_height="30dp"android:spinnerMode="dialog"></Spinner></LinearLayout>

3)使用Adapter绑定item和数据,Spinner使用该Adapter

ArrayAdapter<String> adapter = new ArrayAdapter<>(this,R.layout.item_select,stars);
sp_dropdown.setAdapter(adapter);
设置Spinner默认选择第一项
sp_dropdown.setSelection(0);
监听Spinner选择item的动作
sp_dropdown.setOnItemSelectedListener(this);
package com.example.chapter08;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.Toast;public class SpinnerActivity extends AppCompatActivity implements AdapterView.OnItemSelectedListener {public static final String[] stars = {"Venus",  "Earth", "Jupiter", "Mars", "Mercury"};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_spinner);Spinner sp_dropdown = findViewById(R.id.sp_drop);ArrayAdapter<String> adapter = new ArrayAdapter<>(this,R.layout.item_select,stars);sp_dropdown.setAdapter(adapter);sp_dropdown.setSelection(0);sp_dropdown.setOnItemSelectedListener(this);Spinner sp_dialog = findViewById(R.id.sp_dialog);sp_dialog.setAdapter(adapter);sp_dialog.setSelection(0);sp_dialog.setOnItemSelectedListener(this);}@Overridepublic void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {Toast.makeText(this,"You select " + stars[i],Toast.LENGTH_LONG).show();}@Overridepublic void onNothingSelected(AdapterView<?> adapterView) {}
}

4)效果图:


http://www.ppmy.cn/news/207267.html

相关文章

hp104w打印机连接无线

hp104w有三种连接方式&#xff1a;usb直连&#xff0c;局域网无线连接&#xff0c;wifi直连。 下面记录一下后面两种连接方式&#xff1a; 一、局域网无线连接&#xff0c;需要家里有一个路由器&#xff1a; 1、首先用usb连线电脑&#xff0c;打开hp打印机管理应用&#xff…

惠普无线打印机服务器进不去,连接您的HP无线打印机 | 无线打印中心 | 惠普中国...

HP自动无线连接 - HP自动无线连接是可以让您将打印机自动连接到您无线网络的一种技术&#xff0c;无需连接任何线缆或输入您的无线网络设置&#xff0c;例如网络名称和密码。许多新型HP打印机在标准软件安装过程中都具有此功能。 如果要使用此选项&#xff0c;则为您的打印机安…

PC端无线连接打印机

设备说明&#xff1a;联想笔记本&#xff08;win10&#xff09;、施乐打印机&#xff08;DocuCentre-VI C4471&#xff09; 打印机端口指打印机联机电脑的插口。打印机常见的端口就是LPT口和USB口&#xff0c;LPT就是俗称的并口。打印机端口需要在系统设置中查看。 在系统设置…

关于 设置 无线打印机

第一步&#xff1a;取消禁用Guest用户 1. 点击【开始】按钮&#xff0c;在【计算机】上右键&#xff0c;选择【管理】&#xff0c;如下图所示&#xff1a; 2. 在弹出的【计算机管理】窗口中找到【Guest】用户&#xff0c;如下图所示&#xff1a; 3. 双击【Guest】&#xff0c;…

打印机外接无线服务器,打印机配置外接网卡实现网络打印,请问怎样设置,越祥细越好,很急希望多帮忙...

你说的就是打印服务起。我来告诉你&#xff1a; 打印服务器的出现让网络打印或共享打印进行得相当轻松。不过&#xff0c;打印服务器的安装还需要注意&#xff0c;毕竟它与普通打印机的安装有着很多不同。 第一&#xff0c;在打印服务器与局域网之间架设一条物理“通道”。要是…

无线打印机服务器怎样设置密码,wifi打印机怎么设置密码

--方法 1 通过 USB 将打印机暂时连接到 Mac,然后使用打印机的设置助理让打印机加入 Wi-Fi 网络(如果适用) 如果打印机可通过 USB 线缆连接到 Mac,且包含打印机设置助理软件,则可以使用下列步骤。否则,请考虑方法 2 或 3。 将打印机通过 USB 连接到 Mac。 安装打印机随附的软…

无线打印机服务器安全吗,注意安全 彻底拒绝打印机被非法共享

为了提高打印机的利用率,不少单位往往会通过局域网对打印机进行共享使用。不过这样一来,局域网内的非法用户也有可能趁机使用共享打印机,从而造成打印成本的“节节攀升”。为了阻止非法用户对打印机随意进行共享,本文特意总结了以下几则“拒绝”妙招,相信这些内容可以帮助…