Android 自定义软键盘 悬浮

本文介绍了如何使用recyclerView实现一个简单的4x4数字键盘,包括乱序排列数字、键盘悬浮及拖动功能。乱序通过随机数生成新的字符顺序,固定位置显示通过在结果集中插入特定字符。隐藏系统软键盘使用InputMethodManager,拖动功能则涉及到windowManager和OnTouchListener的设置,解决布局外包裹View导致的问题以及初始化layoutParams的尺寸问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

业务上需求 需要自定义一个数字键盘 需要乱序、悬浮、拖动

网上代码很多,我就记录一下自己遇到的坑


问题描述

  1. 如何实现
    我在网上看了一些方法,有的是继承keyboardView,有的是用recyclerView 做的,我选择第二种;
    我的实现比较简单,因为业务要求不多,只是一个数字键盘的demo,就是用一个recyclerView 做了一个4*4的键盘 0-9 然后凑几个字符 确定删除等。
    乱序比较简单,在一个数组里面加入需要的字符,然后 新建两个数组 一个作为结果集,一个作为中间数组,之后Random 随机取放入结果集里面就行;取完从中间数组删除,这样就得到了乱序的数组;
    如何在固定位置显示?
    我的做法就是乱序完成后再加入需要固定的字符到固定的位置,网格布局加载就可以了;
GridLayoutManager layoutManager = new GridLayoutManager(context, 4, 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值