android APP登陆页面适配的实现

作者:FullScreenDev 时间:2022-08-27 17:55:57 

本文介绍了android APP登陆页面适配的实现,分享给大家,具体如下:

先看效果图。

android APP登陆页面适配的实现

登陆首页效果图

原理

为RootView增加监听事件,然后进行滚动

至于该滚动多少,这是需要自己慢慢进行计算。

xml


<LinearLayout
   android:id="@+id/llLogin"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:background="@color/white"
   android:orientation="vertical">
   <!--你的布局-->
</LinearLayout>

代码


/**
* 1、大于屏幕整体高度的1/3:键盘显示 获取Scroll的窗体坐标
* 算出main需要滚动的高度,使scroll显示。
* 2、小于屏幕整体高度的1/3:键盘隐藏
*
* @param rootView  根布局
*/
private fun addLayoutListener(rootView: View) {
 rootView.viewTreeObserver.addOnGlobalLayoutListener {
   val rect = Rect()
   rootView.getWindowVisibleDisplayFrame(rect)
   val screenHeight = rootView.rootView.height
   val mainInvisibleHeight = rootView.rootView.height - rect.bottom
   if (mainInvisibleHeight > screenHeight / 4) {
     rootView.scrollTo(0, DensityUtils.dp2px(mActivity, 200f/*需要滚动到图片目标高度*/))
   } else {
     rootView.scrollTo(0, 0)
   }
 }
}

来源:https://www.jianshu.com/p/d993a1e71339

标签:android,APP,登陆,适配
0
投稿

猜你喜欢

  • 利用java开发简易版扫雷游戏

    2023-11-07 14:35:15
  • Android DragVideo实现播放视频时任意拖拽的方法

    2022-05-24 03:45:48
  • Struts2学习笔记(8)-Result常用类型

    2023-06-05 11:10:19
  • VS2019配置opencv详细图文教程和测试代码的实现

    2023-07-17 13:49:31
  • C# 添加对System.Configuration.dll文件的引用操作

    2022-03-05 22:20:31
  • mybatis plus中如何编写sql语句

    2021-09-21 15:27:55
  • centos 安装java环境的多种方法

    2023-08-10 16:01:37
  • 布隆过滤器面试如何快速判断元素是否在集合里

    2022-10-17 15:55:19
  • java使用OGEngine开发2048

    2023-07-23 06:07:43
  • 使用C# Winform应用程序获取网页源文件的解决方法

    2023-02-01 10:56:28
  • C# linq查询之动态OrderBy用法实例

    2023-11-04 04:22:56
  • java 动态 代理的方法总结

    2023-08-25 04:00:33
  • Java内存模型final的内存语义

    2023-06-05 08:02:25
  • Flutter加载图片的多样玩法汇总

    2023-08-24 09:48:22
  • 为何找不到Java 7中的警告

    2022-09-08 23:04:18
  • java 多态与抽象类详解总结

    2022-04-19 10:59:18
  • C# FileStream简单介绍和使用

    2023-07-05 23:04:05
  • 基于java构造方法Vector修改元素源码分析

    2023-11-25 10:54:56
  • selenium+java破解极验滑动验证码的示例代码

    2022-11-19 21:52:01
  • SpringBoot超详细讲解@Value注解

    2022-03-06 12:05:36
  • asp之家 软件编程 m.aspxhome.com