当前位置: 首页 > news >正文

02-android studio实现下拉列表+单选框+年月日功能

一、下拉列表功能

1.效果图

2.实现过程

1)添加组件

        <LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginLeft="20dp"android:layout_marginRight="20dp"android:padding="10dip"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="身份"android:textColor="#FF000000"android:textSize="24sp" /><Spinnerandroid:layout_width="wrap_content"android:layout_height="30dp"android:overlapAnchor="false"android:spinnerMode="dropdown"android:textSize="22sp"android:paddingTop="10dip"android:id="@+id/userRole"/></LinearLayout>

2)添加适配器

        val userRole:Spinner = findViewById(R.id.userRole)val roleData = listOf<String>("患者","咨询师","管理员")userRole.setSelection(1)val roleAdapter = ArrayAdapter(this,android.R.layout.simple_list_item_1,roleData)userRole.adapter=roleAdapter

3.注意

1)遮盖组件

如果在xml中没有定义android:overlapAnchor="false" android:spinnerMode="dropdown"这两行代码,将会出现组件被覆盖的情况

2)去掉顶部导航栏

supportActionBar?.hide()

二、单选框功能

1.效果图

2.实现过程

        <LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginLeft="20dp"android:layout_marginRight="20dp"android:padding="15dip"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="性别"android:paddingTop="10dip"android:paddingRight="10dip"android:gravity="center"android:textColor="#FF000000"android:textSize="24sp" /><RadioGroupandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:padding="10dip"android:id="@+id/sex"android:orientation="horizontal"><RadioButtonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="男"android:textSize="24sp"android:id="@+id/sexBoy"android:textColor="#000"/><RadioButtonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="女"android:textSize="24sp"android:id="@+id/sexGirl"android:textColor="#000"/></RadioGroup></LinearLayout>

三、选择年月日功能

1.效果图

2.实现过程

1)定义组件

        <LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginLeft="20dp"android:layout_marginRight="20dp"android:padding="15dip"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="出生日期"android:textColor="#FF000000"android:paddingRight="10dip"android:textSize="24sp" /><EditTextandroid:id="@+id/tvDateTime"android:layout_width="fill_parent"android:layout_height="wrap_content"android:paddingLeft="15dip"android:hint="点击选择时间"android:clickable="true"android:focusable="true"android:textSize="22sp" /></LinearLayout>

2)显示时间

class AddPatient : AppCompatActivity() {private lateinit var tvDateTime: EditTextoverride fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.activity_addpatient)tvDateTime = findViewById(R.id.tvDateTime)tvDateTime.setOnClickListener {showDatePicker()}}private fun showDatePicker() {val calendar = Calendar.getInstance()val year = calendar.get(Calendar.YEAR)val month = calendar.get(Calendar.MONTH)val day = calendar.get(Calendar.DAY_OF_MONTH)val datePickerListener = DatePickerDialog.OnDateSetListener { _, selectedYear, selectedMonth, selectedDay ->// 使用SimpleDateFormat来格式化日期val dateFormatter = SimpleDateFormat("yyyy年MM月dd日", Locale.getDefault())val selectedDate = dateFormatter.format(Date(selectedYear - 1900, selectedMonth, selectedDay))tvDateTime.setText(selectedDate)}DatePickerDialog(this,datePickerListener,year,month,day).show()}
}

相关文章:

02-android studio实现下拉列表+单选框+年月日功能

一、下拉列表功能 1.效果图 2.实现过程 1&#xff09;添加组件 <LinearLayoutandroid:layout_width"match_parent"android:layout_height"wrap_content"android:layout_marginLeft"20dp"android:layout_marginRight"20dp"android…...

曹操的五色棋布阵 - 工厂方法模式

定场诗 “兵无常势&#xff0c;水无常形&#xff0c;能因敌变化而取胜者&#xff0c;谓之神。” 在三国的战场上&#xff0c;兵法如棋&#xff0c;布阵如画。曹操的五色棋布阵&#xff0c;不正是今日软件设计中工厂方法模式的绝妙写照吗&#xff1f;让我们从这个神奇的布阵之…...

谷粒商城学习笔记-逆向工程错误记录

文章目录 1&#xff0c;Since Maven 3.8.1 http repositories are blocked.1.1 在maven的settings.xml文件中&#xff0c;新增如下配置&#xff1a;1.2&#xff0c;执行clean命令刷新maven配置 2&#xff0c;internal java compiler error3&#xff0c;启动逆向工程报错&#x…...

FastAPI+SQLAlchemy数据库连接

FastAPISQLAlchemy数据库连接 目录 FastAPISQLAlchemy数据库连接配置数据库连接创建表模型创建alembic迁移文件安装初始化编辑env.py编辑alembic.ini迁移数据库 视图函数查询 配置数据库连接 # db.py from sqlalchemy import create_engine from sqlalchemy.orm import sessio…...

Android中的适配器,你知道是做什么的吗?

&#x1f604;作者简介&#xff1a; 小曾同学.com,一个致力于测试开发的博主⛽️&#xff0c;主要职责&#xff1a;测试开发、CI/CD&#xff0c;日常还会涉及Android开发工作。 如果文章知识点有错误的地方&#xff0c;还请大家指正&#xff0c;让我们一起学习&#xff0c;一起…...

GitHub详解:代码托管与协作开发平台

文章目录 一、GitHub简介二、GitHub的核心功能2.1 仓库&#xff08;Repository&#xff09;2.2 版本控制与分支&#xff08;Branch&#xff09;2.3 Pull Request2.4 Issues与Projects2.5 GitHub Actions 三、GitHub的使用方法3.1 注册与登录3.2 创建和管理仓库3.3 使用Git进行代…...

【植物大战僵尸杂交版】获取+存档插件

文章目录 一、还记得《植物大战僵尸》吗&#xff1f;二、在哪下载&#xff0c;怎么安装&#xff1f;三、杂交版如何进行存档功能概述 一、还记得《植物大战僵尸》吗&#xff1f; 最近&#xff0c;一款曾经在15年前风靡一时的经典游戏《植物大战僵尸》似乎迎来了它的"文艺复…...

BP神经网络与反向传播算法在深度学习中的应用

BP神经网络与反向传播算法在深度学习中的应用 在神经网络的发展历史中&#xff0c;BP神经网络&#xff08;Backpropagation Neural Network&#xff09;占有重要地位。BP神经网络通过反向传播算法进行训练&#xff0c;这种算法在神经网络中引入了一种高效的学习方式。随着深度…...

【数据结构与算法】插入排序

&#x1f493; 博客主页&#xff1a;倔强的石头的CSDN主页 &#x1f4dd;Gitee主页&#xff1a;倔强的石头的gitee主页 ⏩ 文章专栏&#xff1a;《数据结构与算法》 期待您的关注 ​...

MySQL如何实现数据排序

根据explain的执行计划来看&#xff0c;MySQL可以分为索引排序和filesort 索引排序 如果查询中的order by字句包含的字段已经在索引中&#xff0c;且索引的排列顺序和order by子句一致&#xff0c;则可直接利用索引进行排序&#xff0c;由于索引有序&#xff0c;所以排序效率…...

给我的 IM 系统加上监控两件套:【Prometheus + Grafana】

监控是一个系统必不可少的组成部分&#xff0c;实时&#xff0c;准确的监控&#xff0c;将会大大有助于我们排查问题。而当今微服务系统的话有一个监控组合很火那就是 Prometheus Grafana&#xff0c;嘿你别说 这俩兄弟配合的相当完美&#xff0c;Prometheus负责数据采集&…...

【Python】基于动态规划和K聚类的彩色图片压缩算法

引言 当想要压缩一张彩色图像时&#xff0c;彩色图像通常由数百万个颜色值组成&#xff0c;每个颜色值都由红、绿、蓝三个分量组成。因此&#xff0c;如果我们直接对图像的每个像素进行编码&#xff0c;会导致非常大的数据量。为了减少数据量&#xff0c;我们可以尝试减少颜色…...

【做一道算一道】和为 K 的子数组

给你一个整数数组 nums 和一个整数 k &#xff0c;请你统计并返回 该数组中和为 k 的子数组的个数 。 子数组是数组中元素的连续非空序列。 示例 1&#xff1a; 输入&#xff1a;nums [1,1,1], k 2 输出&#xff1a;2 示例 2&#xff1a; 输入&#xff1a;nums [1,2,3],…...

Facebook应用开发:认证与授权登录流程详解

Facebook作为全球最大的社交平台之一&#xff0c;提供了强大的认证与授权机制&#xff0c;允许第三方应用通过Facebook登录来简化用户的注册和登录流程。本文将详细介绍Facebook应用开发中的认证和授权登录流程&#xff0c;以及如何在应用中实现这一功能。 关键词 Facebook登…...

实战:搭建一款属于自己的个人知识库~docusaurus(强大且丝滑)-2024.7.7(测试成功)

目录 文章目录 目录docusaurus简介效果专题链接&#x1f44f;环境源码1、安装基础环境2、拉取代码3、安装坚果云并同步md核心文件4、构建运行5、配置脚本环境1.配置vscode终端到ecs的免密2.配置win10 vscode终端环境变量 6、构建并推送静态文件到ecs关于我最后最后 docusaurus简…...

Java教程之IO模式精讲,NIO+BIO

第一章 BIO、NIO、AIO介绍 背景 在java的软件设计开发中&#xff0c;通信架构是不可避免的&#xff0c;我们在进行不同系统或者不同进程之间的数据交互&#xff0c;或 者在高并发下的通信场景下都需要用到网络通信相关的技术&#xff0c;对于一些经验丰富的程序员来说&#x…...

如何让代码兼容 Python 2 和 Python 3?Future 库助你一臂之力

目录 01Future 是什么? 为什么选择 Future? 安装与配置 02Future 的基本用法 1、兼容 print 函数 2、兼容整数除法 3、兼容 Unicode 字符串 03Future 的高级功能 1. 处理字符串与字节 2. 统一异常处理…...

AI让大龄程序员重新焕发活力

AI是在帮助开发者还是取代他们&#xff1f; 在软件开发领域&#xff0c;生成式人工智能&#xff08;AIGC&#xff09;正在改变开发者的工作方式。无论是代码生成、错误检测还是自动化测试&#xff0c;AI工具正在成为开发者的得力助手。然而&#xff0c;这也引发了对开发者职业…...

Python在现代办公自动化中的应用:会不会被裁?就看你的效率了!

Python在现代办公自动化中的应用&#xff1a;提升效率的艺术 Python&#xff0c;作为一门简洁而强大的编程语言&#xff0c;已经成为许多办公室英雄优化日常工作的秘密武器。本文将带你探索Python如何在办公自动化领域大放异彩&#xff0c;并且会巧妙融入开源神器PlugLink&…...

Laravel5+mycat 报错 “Packets out of order”

背景 近期对负责项目&#xff0c;配置了一套 主从复制的 MySQL 集群 使用了中间件 mycat 但测试发现&#xff0c;替换了原来的数据连接后&#xff0c;会出现 Packets out of order 的报错 同时注意到&#xff0c;有的框架代码中竟然也会失效&#xff0c;比如 controller 类中&…...

glm-5-free不输付费版!DMXAPIAI模型聚合平台,如何调用免费大模型API?

中关村论坛发布AutoGLM 沉思智能体&#xff0c;具备深度研究与电脑操作双重能力&#xff0c;GLM-5.1 编程能力与全球顶尖模型 Claude Opus 4.6 差距仅2.6 分&#xff0c;整体呈现技术迭代、商业化与资本市场的全面提速态势。智谱AI正式推出GLM-5-free开源模型&#xff0c;凭借与…...

PyDuinoBridge:Python与Arduino串口通信的变量级桥梁

1. PyDuinoBridge&#xff1a;嵌入式系统与Python协同开发的双向通信桥梁 PyDuinoBridge 是一个轻量级、透明、面向工程实践的串行通信中间件库&#xff0c;专为解决嵌入式微控制器&#xff08;以Arduino平台为代表&#xff09;与上位机Python环境之间高效、可靠、低侵入式数据…...

helm部署skywalking链路追踪 java

添加helm仓库 skywalking取别名 sw 名称可以任意写helm repo add sw https://apache.jfrog.io/artifactory/skywalking-helm helm repo list这里 sw 要与上面的 sw 名称 一样 从 Helm 仓库下载 SkyWalking 的 Chart 包&#xff0c;–untar 并自动解压到当前目录helm pull sw/s…...

“德智米”齐聚港股!德适高研发高增长,领跑 AI 医疗新赛道

随着德适正式登陆港交所&#xff0c;北京智谱、上海 MiniMax、杭州德适组成的 “德智米”AI 三强正式齐聚港股&#xff0c;勾勒出中国 AI 产业从底层基建、C 端应用到 B 端垂直落地的完整版图。其中&#xff0c;德适以“医学影像大模型 医疗垂直场景 高增长商业化”的独特定位…...

宿主机与虚拟机网络配置打通

Kali 虚拟机网络配置笔记 一、基础网络模式 1. 桥接模式 (Bridged) 目的&#xff1a;让虚拟机加入物理局域网配置&#xff1a; 选择物理网卡&#xff08;非VMnet1/VMnet8&#xff09;启用"复制物理网络连接状态"&#xff08;推荐笔记本用户&#xff09; 结果&#xf…...

单片机触摸按键实现方案与优化技巧

1. 单片机实现触摸按键的核心原理在消费电子产品中&#xff0c;触摸按键已经成为主流交互方式。传统方案多采用专用触摸IC&#xff0c;但实际上许多低功耗单片机也能实现这一功能。其核心原理都是基于电容感测技术&#xff0c;通过检测电极电容变化来判断触摸状态。电容式触摸按…...

大一C语言期末必考|程序结构+流程控制(详解+例题+易错点)一

&#x1f525;个人主页&#xff1a;北极的代码&#xff08;欢迎来访&#xff09; &#x1f3ac;作者简介&#xff1a;java后端学习者 ❄️个人专栏&#xff1a;苍穹外卖日记&#xff0c;SSM框架深入&#xff0c;JavaWeb ✨命运的结局尽可永在&#xff0c;不屈的挑战却不可须臾或…...

给 Claude 装个仪表盘,时刻监测Token消耗跟任务进度

一、 什么是 Claude HUD&#xff1f;HUD 原意是“平视显示器”&#xff0c;通常出现在战斗机飞行员的头盔或高端汽车的挡风玻璃上。Claude HUD 干的也是这件事。它是一个专门为 Claude Code 设计的插件&#xff0c;会在你的终端底部常驻一个状态栏。有了它&#xff0c;你不再需…...

LPD8806驱动库详解:SPI控制16位PWM LED灯带的嵌入式实践

1. LPD8806驱动库技术解析&#xff1a;面向嵌入式系统的PWM LED控制器深度实践1.1 芯片定位与工程价值LPD8806是凌阳&#xff08;Sunplus&#xff09;推出的16位恒流LED驱动IC&#xff0c;专为高密度RGB LED灯带、像素点阵及舞台灯光系统设计。其核心价值在于以极低成本实现精确…...

从HCCDA题库看实战:GaussDB开发者必须掌握的10个核心操作(附实验截图指南)

从HCCDA题库看实战&#xff1a;GaussDB开发者必须掌握的10个核心操作&#xff08;附实验截图指南&#xff09; 在数据库技术的世界里&#xff0c;认证考试往往被视为理论知识的试金石&#xff0c;但真正考验开发者能力的&#xff0c;是如何将这些理论转化为实际生产力。GaussDB…...