我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Android 浮动编辑框的具体实现代码

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Android 浮动编辑框的具体实现代码

Android app 开发中经常会遇到一些输入框要悬浮到软键盘上方的需求,大致做法有做法如下。

Android输入法软键盘悬浮,最常见的一种方法是通过给ViewTreeObserver添加ViewTreeObserver.OnGlobalLayoutListener当全局布局完成时或视图树中视图的可见性发生变化时回调onGlobalLayout方法,在onGlobalLayout方法中获取当前窗口的区域,获取区域高度如果超过屏幕的五分之一一般认为是软键盘处于显示状态,区域高度即为输入法软键盘高度,通过此高度动态调整view的高度,达到输入框悬浮于软键盘上方的效果,代码如下:

ViewTreeObserver.OnGlobalLayoutListener layoutListener =        new ViewTreeObserver.OnGlobalLayoutListener() {      int mScreenHeight = 0;      int mKeyboardHeight = 0;      @Override      public void onGlobalLayout() {        Rect rect = new Rect();        // 测量当前窗口的显示区域        ((Activity)getContext()).getWindow().getDecorView()            .getWindowVisibleDisplayFrame(rect);        if(mScreenHeight <= 0){          mScreenHeight = ((WindowManager) getContext()              .getSystemService(Context.WINDOW_SERVICE))              .getDefaultDisplay().getHeight();        }        //计算出软键盘的高度        int keyboardHeight = mScreenHeight - rect.bottom;        //如果keyboardHeight大于屏幕的五分之一,        // 此时keyboardHeight有效,反之就是软键盘已经关闭了。        if (Math.abs(keyboardHeight) > mScreenHeight / 5) {          mKeyboardHeight = keyboardHeight;        }      }    }

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Android 浮动编辑框的具体实现代码

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Android 浮动编辑框的具体实现代码

Android app 开发中经常会遇到一些输入框要悬浮到软键盘上方的需求,大致做法有做法如下。Android输入法软键盘悬浮,最常见的一种方法是通过给ViewTreeObserver添加ViewTreeObserver.OnGlobalL
2023-05-30

Android实现悬浮对话框代码

先给大家展示下效果图,大家觉效果满意,请参考实现代码。直接上代码:private void setDialog(){ View view = getLayoutInflater().inflate(R.layout.dialog_count
2022-06-06

悬浮对话框Android代码实现

直接上代码: private void setDialog(){View view = getLayoutInflater().inflate(R.layout.dialog_country, null);mDialog = new Dia
2022-06-06

android编程实现悬浮窗体的方法

本文实例讲述了android编程实现悬浮窗体的方法。分享给大家供大家参考,具体如下: 突然对悬浮窗体感兴趣,查资料做了个小Demo,效果是点击按钮后,关闭当前Activity,显示悬浮窗口,窗口可以拖动,双击后消失。效果图如下:它的使用原理
2022-06-06

Android刮刮卡功能具体实现代码

今天整理之前的代码,忽然看到之前自己写的一个刮刮卡,整理下以便以后使用,同时分享给需要的朋友,如有错误,还请多多指正。实现的步骤,其实就是徒手画三个图层叠加在一起,最上层是绘制需要的问题,就是以上所述的“骚年,刮我吧”,第二层就是覆盖宽高的
2022-06-06

Android悬浮对话框(即点即关对话框)实现代码

Activity是Android系统的4个应用程序组件之一。通过传统方法显示的Activity都是充满整个屏幕,也就是全屏的Activity。事实上,Activity不仅可以全屏显示,还可以象对话框一样直接显示在屏幕上。而且可以通过单击屏幕
2022-06-06
2022-06-06

Android画图并保存图片的具体实现代码

Canvas是一个画布,你可以建立一个空白的画布,就直接new一个Canvas对象,不需要参数。也可以先使用BitmapFactory创建一个Bitmap对象,作为新的Canvas对象的参数,也就是说这个画布不是空白的,如果你想保存图片的话
2022-06-06

Android RecyclerView打造悬浮效果的实现代码

本文介绍了Android RecyclerView悬浮效果,分享给大家,具体如下:先看个效果这是一个City列表,每个City都有所属的Province,需要在滑动的时候,将对应的Province悬浮在顶部。悬浮顶部的Province需要根
2023-05-30

Android获取手机配置信息具体实现代码

代码如下: StringBuilder phoneInfo = new StringBuilder(); phoneInfo.append("Product: " + android.os.Build.PRODUCT + System.ge
2022-06-06

android实现自动关机的具体方法

[java] 代码如下:private void shutdown() { try { Process process = Runtime.getRuntime().exec(
2022-06-06

在Android中动态添加Panel框架的实现代码

这里说是框架,说的大了点,其实没有那么复杂,只是一个容易扩展的基类而已。不过至少算是框架类的代码。 代码如下:package arui; import android.app.Activity; import android.os.Ha
2022-06-06

Android视频悬浮窗口实现的示例代码

前言 本文例子实现了点击显示悬浮窗口,同时窗口可播放视频,拖动位置,点击关闭及返回 APP 页面,通过例子来讲述悬浮窗口实现原理及细节处理,效果图如下所示:悬浮窗口.gif 原理 WindowManager 对 View 视图进行添加、移
2022-06-06

python实现mp3文件播放的具体实现代码

前段时间在搞一个基于python的语音助手,其中需要用到python播放音频的功能,下面这篇文章主要给大家介绍了关于python实现mp3文件播放的具体实现代码,需要的朋友可以参考下
2023-05-18

android 应用内部悬浮可拖动按钮简单实现代码

本文介绍了android 应用内部悬浮可拖动按钮简单实现代码,分享给大家,具体如下:可以悬浮在activity上面,在加载fragment时悬浮按钮不会消失实现方式很简单,因为是在应用内部拖动的,只需要通过Activity获取WindowM
2023-05-30

android 实现ScrollView自动滚动的实例代码

有时候需要动态添加数据,屏幕显示满了,数据需要滚动展示。这里主要弄懂scrollTo(0, off)方法的含义喊用法。 含义不说了,大概意思就这样。 下面来看他的用法:代码如下:private void searchResultShow()
2022-06-06

uniapp实现人脸识别功能的具体实现代码

最近在使用uniapp开发项目,有刷脸实名认证的需求,下面这篇文章主要给大家介绍了关于uniapp实现人脸识别功能的具体实现,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
2022-12-08

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录