android edittext_Android 支持拖动、缩放的自定义软键盘
点击上方“Android技术杂货铺”,选择“标星”
干货文章,第一时间送达!
开篇
本次给大家分享的是支持拖动、缩放的自定义原生软键盘。不同于市面上的自定义软件,此键盘完全是原生实现。为什么要写这款自定义键盘,是因为在项目开发过程中,发现在弹窗输入框中调用系统输入法的时候,输入框会别严重挤上去,特别处于横屏界面时,键盘所占有的空间很大,留给用户的操作空间太小,压缩了用户的体验性。当前还没有发布到jCenter
中心,如果有类似需求,请到GitHub下载该库至项目中,按需求做相应调整。
传送门:https://github.com/JustinRoom/KeyboardDemo
效果图
使用方法
使用要点:
a、创建KeyBoardView实例(支持xml布局文件):
KeyBoardView keyboardView = new KeyBoardView(context);
b、管理所有需要使用该自定义键盘的
EditText
:
//如果view是ViewGroup,自动查找该ViewGroup树下的所有EditText并加入管理 public void addAllInputView(View view)//添加某一特定的EditTextpublic void addInputView(@NonNull EditText editText)public void removeAllInputView(View view)public void removeInputView(@NonNull EditText editText)
c、把
KeyBoardView
添加到Activity
、Fragment
、DialogFragment
所在的Window
中:KeyUtils
工具已提供了一个快速添加的方法。
KeyUtils.init(getActivity().getWindow(), keyboardView);
1、Activity、Fragment。这里以Fragment为例:
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View root = inflater.inflate(R.layout.fragment_keyboard, container, false); keyboardView = new KeyBoardView(root.getContext()); keyboardView.addAllInputView(root); KeyUtils.init(getActivity().getWindow(), keyboardView);
root.findViewById(R.id.btn_toggle).setOnClickListener(this); root.findViewById(R.id.btn_dialog).setOnClickListener(this); return root; }
@Override public void onResume() { super.onResume(); keyboardView.onResume(); }
@Override public void onPause() { Log.i("KeyboardFragment", "onPause: "); keyboardView.onPause(); super.onPause(); }
@Override public void onDestroy() { keyboardView.onDestroy(); super.onDestroy(); }
其他实现细节请看源码:https://github.com/JustinRoom/KeyboardDemo
作者:SwitchLife
链接:https://www.jianshu.com/p/8f3382a63f8b
本文来自SwitchLife
投稿
---end---
推荐阅读:
高仿探探首页波纹扫描效果
开源一个 Android 图片压缩框架
Java8 中的Lambda 表达式详解
2019 随手点好看 年薪上百万!
android edittext_Android 支持拖动、缩放的自定义软键盘相关推荐
- android keyboard颜色,Android基于KeyboardView和Keyboard实现自定义软键盘 自定义键盘背景色...
Android基于KeyboardView和Keyboard实现自定义软键盘 在一些特别的情况下我们需要去自定义键盘 例如: 银行app的密码输入之类的 笨方法就是直接使用布局写我们的自定义软键盘 但 ...
- Android基于KeyboardView和Keyboard实现自定义软键盘 自定义键盘背景色
Android基于KeyboardView和Keyboard实现自定义软键盘 在一些特别的情况下我们需要去自定义键盘 例如: 银行app的密码输入之类的 笨方法就是直接使用布局写我们的自定义软键盘 但 ...
- 调用软键盘_Android 支持拖动、缩放的自定义软键盘
点击上方"Android技术杂货铺",选择"标星" 干货文章,第一时间送达! 开篇 本次给大家分享的是支持拖动.缩放的自定义原生软键盘.不同于市面上的自定义软件 ...
- Android 自定义软键盘实现 数字九宫格
前言 最近项目在对接美团外卖功能 实现外面小哥凭取货码取货 对接完功能后 用户反馈 弹出的软键盘 很难输入 数字太小了 大概是下面这种显示方式 需求 组长说 要不搞一个自定义软键盘吧 数字搞大点 方便 ...
- Android使用xml自定义软键盘效果(附源码)
Android使用xml自定义软键盘效果原理: 1,软键盘其实是个控件,使用android.inputmethodserver.KeyboardView类定义. 2,主布局中使用帧布局,当我们需要显示 ...
- android自定义系统键盘,Android自定义软键盘
[实例简介] Android自定义软键盘 [实例截图] [核心代码] keydemo └── keydemo ├── AndroidManifest.xml ├── bin │ ├── class ...
- Android自定义软键盘输入法,隐藏系统输入法显示光标的实现
android实现自定义软键盘,先上图看效果,效果基本上是仿ios输入法实现的 这里是实现隐藏系统输入法,同时让EditText能获取光标的代码部分(通过反射调用): <span style=& ...
- Android自定义软键盘样式:字母、数字、标点三种切换
先看效果图: 1.在需要的调用软键盘的activity_mian.xml中加入键盘控件 <!--自定义键盘控件--> <RelativeLayoutandroid:layout_wi ...
- android自动软键盘,Android自定义软键盘
MyKeyboard Android自定义键盘的使用 实现步骤 第一步: 1.新建一个xml文件夹放在res目录下面,然后新建xml文件:money_keyboard.xml 2.然后在XML文件中添 ...
最新文章
- vscode 调试html页面,vscode调试HTML
- python语言入门m-「数据挖掘入门系列」Python快速入门
- linux wifi修改频率,Linux Custom CRDA WiFi regulatory.bin和40MHz BW 5GHz频...
- 2021宿州市地区高考成绩排名查询,2021年宿州市所有的高中排名,宿州市高中高考成绩排名出炉...
- WebStorm按Tab建快速生成代码模块
- Android批量图片载入经典系列——使用LruCache、AsyncTask缓存并异步载入图片
- 造成OOM的原因有哪几种?
- 广州培训:成功部署报表必做的四件事
- C++的STL标准库学习(deque)双向队列
- JAVA 泛型 入门
- Spring Bean的生命周期(一图看懂bean生命周期)
- 信息系统分析与设计(第四版)期末复习提纲
- 逃离北上广的成本越来越高了
- 春运火车票抢票浏览器强力推荐,秒抢车票到手
- 18位身份证号码含义及验证算法代码
- 软件测试实验学习笔记系列2 -- lint,splint的使用
- 怎样测试手机性能软件,如何检测手机性能的软件
- 安全浏览器无法安装?看这一篇就够了
- Android之手机振动和振铃
- HTML+CSS实现基础课程表页面制作 (锚链接到页面下方课程详细信息)~小白入门版~
热门文章
- 如何处理海量数据(上):从并发编程到分布式系统
- Asp.NetCore1.1版本没了project.json,这样来生成跨平台包
- keepalived+nginx安装与配置
- QThread中的互斥、读写锁、信号量、条件变量
- Jquery常用操作:checkbox、select取值,radio、checkbox、select选中及其相关
- centos yum 安装配置
- Fedora install chrome
- [好书推荐].计算机原理与设计——Verilog HDL版等;待续
- 20个Nginx Web服务器最佳安全实践
- 用Qt 4.4编写drcom的GUI (转)