android——spinner下拉弹窗、popupwindow下拉弹窗列表

一、spinner下拉弹窗

效果图如下:

adapter的代码:

package com.yaona.spinnerimport android.R
import android.content.Context
import android.graphics.Color
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.ArrayAdapter
import android.widget.TextViewclass SpinnerAdapter(context: Context,textViewResourceId: Int, objects: Array<String>
) : ArrayAdapter<String?>(context, textViewResourceId, objects) {private var context: Contextprivate var items = arrayOf<String>()init {items = objectsthis.context = context}/** 点击后弹窗显示 **/override fun getDropDownView(position: Int, convertView: View?,parent: ViewGroup): View? {val tv: TextView = if (convertView == null) {val inflater = LayoutInflater.from(context)val view = inflater.inflate(R.layout.simple_spinner_item, parent, false)view.findViewById(R.id.text1)} else {convertView.findViewById(R.id.text1)}tv.text = items[position]tv.setTextColor(Color.BLUE)tv.textSize = 24freturn tv}/** spinner控件显示 **/override fun getView(position: Int, convertView: View?, parent: ViewGroup): View {var convertView = convertViewif (convertView == null) {val inflater = LayoutInflater.from(context)convertView = inflater.inflate(R.layout.simple_spinner_item, parent, false)}val tv = convertView?.findViewById<View>(R.id.text1) as TextViewtv.text = items[position]
//        tv.setTextColor(Color.BLUE)tv.textSize = 24freturn convertView!!}
}

wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

xml代码:

<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"><data></data><androidx.constraintlayout.widget.ConstraintLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"tools:context=".MainActivity"><androidx.appcompat.widget.AppCompatSpinnerandroid:id="@+id/sp_supply_refund"android:layout_width="200dp"android:layout_height="70dp"android:background="@drawable/spinner_triangle"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toTopOf="parent" /></androidx.constraintlayout.widget.ConstraintLayout>
</layout>

wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

MainActivity代码

import android.R
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.yaona.spinner.databinding.ActivityMainBindingclass MainActivity : AppCompatActivity() {private lateinit var binding: ActivityMainBindingoverride fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)binding = ActivityMainBinding.inflate(layoutInflater)initSupplierSpinner(mutableListOf("张三", "李四","王五"))setContentView(binding.root)}private fun initSupplierSpinner(list: List<String>) {// 创建一个适配器用于显示 Spinner 中的项目列表val adapter = SpinnerAdapter(this, R.layout.simple_spinner_item, list.toTypedArray())binding.spSupplyRefund.dropDownVerticalOffset = 180binding.spSupplyRefund.adapter = adapter}
}

wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

具体的代码下载地址为:https://download.csdn.net/download/wy313622821/88274359

二、popupwindow下拉弹窗列表(推荐)

效果图为:

  

代码下载地址为:

https://download.csdn.net/download/wy313622821/88275750

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/93985.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深度图相关评测网站

文章目录 1 单目/Stereo相关测评网站介绍12 单目/Stereo相关测评网站介绍23 单目/Stereo相关测评网站介绍3 1 单目/Stereo相关测评网站介绍1 https://vision.middlebury.edu/stereo/eval3/ 2 单目/Stereo相关测评网站介绍2 http://www.cvlibs.net/datasets/kitti/eval_stereo…

Vue-关于路由规则模块的封装

路由的封装抽离 对路由的封装进行封装&#xff0c;方便main.js文件维护 首先&#xff1a; 我们需要再src文件夹中创建一个router文件夹&#xff0c;在里面在创建一个index.js文件夹。 然后&#xff1a; 我们再index.js文件夹中进行封装路由规则 import Find from /views/F…

Docker切换文件系统为VFS

一、介绍 Docker支持AUFS、Btrfs、Device Mapper、OverlayFS、VFS、ZFS六种不同的存储驱动。 1. AUFS AUFS是一种常见的存储驱动程序&#xff0c;它也使用了Linux内核的AUFS文件系统。它的优点是支持所有的Linux发行版&#xff0c;可以在不同的容器之间共享文件系统&#xf…

《Go 语言第一课》课程学习笔记(十三)

方法 认识 Go 方法 Go 语言从设计伊始&#xff0c;就不支持经典的面向对象语法元素&#xff0c;比如类、对象、继承&#xff0c;等等&#xff0c;但 Go 语言仍保留了名为“方法&#xff08;method&#xff09;”的语法元素。当然&#xff0c;Go 语言中的方法和面向对象中的方…

自动驾驶攻城战,华为小鹏先亮剑

点击关注 文&#xff5c;刘俊宏 编&#xff5c;苏扬、王一粟 本文为光锥智能x腾讯科技联合出品 2023年过半&#xff0c;城市NOA&#xff08;城市领航辅助驾驶&#xff09;的元年如预期中到来了吗&#xff1f; 8月25日&#xff0c;成都车展开幕&#xff0c;与4个月之前的上海…

——滑动窗口

滑动窗口 所谓滑动窗口&#xff0c;就是不断的调节子序列的起始位置和终止位置&#xff0c;从而得出我们要想的结果。也可以理解为一种双指针的做法。 leetcode76 class Solution {public String minWindow(String s, String t) {char[] schars s.toCharArray();char[] tc…

undolog

一、原子性 ACID&#xff1a;通过undolog保证原子性 二、undolog 如何做 把回滚时所需的东西都给记下来&#xff1a; 1、插入一条记录时&#xff0c;至少要把这条记录的主键值记下来&#xff0c;回滚的时候只需要把这个主键值对应的记录删掉就好了。 2、删除了一条记录&…

基于Vue前端框架构建BI应用程序

一、什么是Vue&#xff1f; Vue&#xff08;Vue.js&#xff09;是一个轻量级、高性能、可组件化的MVVM库。简而言之&#xff0c;是一个构建数据驱动的web界面的渐进式框架。它采用MVVM思想&#xff0c;通过数据双向绑定实现数据的动态渲染&#xff0c;同时也支持组件化的开发方…

IO模型和NGINX安装升级

IO模型和NGINX安装升级 IO模型 IO概念 I/O在计算机中指Input/Output&#xff0c; IOPS (Input/Output Per Second)即每秒的输入输出量(或读写次数)&#xff0c;是衡量磁盘性能的主要指标之一。 Linux的IO类型 磁盘I/O 磁盘I/O是进程向内核发起系统调用&#xff0c;请求磁…

ceph中PGLog处理流程

ceph的PGLog是由PG来维护&#xff0c;记录了该PG的所有操作&#xff0c;其作用类似于数据库里的undo log。PGLog通常只保存近千条的操作记录(默认是3000条&#xff0c; 由osd_min_pg_log_entries指定)&#xff0c;但是当PG处于降级状态时&#xff0c;就会保存更多的日志&#x…

sql各种注入案例

目录 1.报错注入七大常用函数 1)ST_LatFromGeoHash (mysql>5.7.x) 2)ST_LongFromGeoHash &#xff08;mysql>5.7.x&#xff09; 3)GTID (MySQL > 5.6.X - 显错<200) 3.1 GTID 3.2 函数详解 3.3 注入过程( payload ) 4)ST_Pointfromgeohash (mysql>5.…

gitee上传本地项目bug

&#x1f92e;这个破bug不知道浪费了多长时间&#xff0c;以前没有记录&#xff0c;每次都忘记&#xff0c;这次记下来 问题描述 gitee创建仓库&#xff0c;然后根据它提示的如下命令&#xff0c;但一直报错 原因分析&#xff1a; 把命令复制出来&#xff0c;粘贴到Sublime …