android 获取控件在屏幕中的坐标_android 控件中心坐标-程序员宅基地

技术标签: Android基础  ui  android  onWindowFocusChanged  android studio  坐标  


今天,简单讲讲android如何获取控件在屏幕中的坐标。


这个其实也很简单,但是昨天做一个功能时,需要功能控件的坐标做一些逻辑操作时,居然不知道怎么做。所以在网上查找了资料后,解决了这个问题。这里记录一下。


getLocationOnScreen ,计算该视图在全局坐标系中的x,y值,(注意这个值是要从屏幕顶端算起,也就是索包括了通知栏的高度)//获取在当前屏幕内的绝对坐标

getLocationInWindow ,计算该视图在它所在的widnow的坐标x,y值,//获取在整个窗口内的绝对坐标 (不是很理解= =、)

getLeft , getTop, getBottom, getRight, 这一组是获取相对在它父亲里的坐标


如果在Activity的OnCreate()事件输出那些参数,是全为0,要等UI控件都加载完了才能获取到这些。

package xiaosi.location;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;

public class LocationActivity extends Activ
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/bzlj2912009596/article/details/79922837

智能推荐

**The sip module implements API v11.0 to v11.2 but the PyQt5.QtCore module requires API v11.3**_the pyqt5.qtcore module failed to register with th-程序员宅基地

文章浏览阅读3.6k次。*The sip module implements API v11.0 to v11.2 but the PyQt5.QtCore module requires API v11.3*情况一 SIP版本不匹配我在使用PyQt5时遇到了这个问题:“sip模块实现了API v11.0到v11.2,但PyQt5.QtWidgets模块需要API v11.3”pip列表sip 4.18,但是使..._the pyqt5.qtcore module failed to register with the sip module

Lesson1强化学习(RL)初印象 学习笔记_rl编程-程序员宅基地

文章浏览阅读467次。Lesson1强化学习(RL)初印象_rl编程

mysql存储过程执行返回-1_mysql简单存储过程创建并返回执行结果-程序员宅基地

文章浏览阅读825次。DROP PROCEDURE IF EXISTS `create_appeal`;DELIMITER $$CREATE PROCEDURE `create_appeal`(IN userId INT,IN userName VARCHAR(20),IN historyId VARCHAR(20),IN productId INT,IN tourneyId INT,IN roundId TINY..._mysql8 创建存储过程返回 -1

过滤器防止xss攻击_xss过滤器-程序员宅基地

文章浏览阅读950次。将参数中有关xss攻击的非法字符全部处理掉。_xss过滤器

最美纪念日-程序员宅基地

文章浏览阅读58次。有问题请留言:[email protected]

(附源码)计算机毕业设计SSM智慧消防维保系统后端设计与实现_智慧消防 代码货栈-程序员宅基地

文章浏览阅读545次。项目运行环境配置:Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。项目技术:SSM + mybatis + Maven + Vue 等等组成,B/S模式 + Maven管理等等。环境需要1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。2.IDE环境:IDEA,Eclipse,Myeclipse都可以。_智慧消防 代码货栈

随便推点

基于matlab+模板匹配的车牌识别_255 * mx / (xmax - xmin)-程序员宅基地

文章浏览阅读3.2w次,点赞51次,收藏422次。一、前言 随着我国经济的快速发展,汽车拥有量的急剧增加,公路交通成为我国重要的交通运输途径,是国家大力发展的基础设施之一。因此,交通管理的现代化和智能化就越来越显得重要和亟迫。利用电子信息技术来提高管理效率、交通效率和打造安全的智能交通系统已成为当前交通管理发展的主题。实现交通管理现代化和智能化的核心技术之一就是车牌自动识别技术。与传统的车辆管理方法相比,它大大提高了管理效率和水平..._255 * mx / (xmax - xmin)

MetaGPT多智能体开发_metagpt调用qwen-程序员宅基地

文章浏览阅读971次,点赞15次,收藏16次。在MetaGPT看来,可以将智能体想象成环境中的数字人,其中智能体 = 大语言模型(LLM) + 观察 + 思考 + 行动 + 记忆这个公式概括了智能体的功能本质。举例说明:智能体为某后开发工程师角色那多智能体意味着什么呢如图例说明:你是一个软件公司的老板以上多智能体意味着一句话实现一个小型应用的开发:样例(由GPT-4生成)例如,如果你执行,将会得到包括数据类型&API设计在内的输出生成一个包含分析和设计内容的样例的成本约为(使用GPT-4),而生成一个完整项目的成本约为。在这里插入图片描述。_metagpt调用qwen

储能容量优化配置及经济调度模型:基于粒子群算法和遗传算法的混合发电系统调峰方案-程序员宅基地

文章浏览阅读282次。其次,引入粒子群算法,结合含有抽水蓄能机组的混合发电系统的调峰经济调度模型,提出双层储能容量优化配置的方法。而将粒子群算法与含有抽水蓄能机组的混合发电系统的调峰经济调度模型相结合,可以获得储能的最优容量配置,进一步提高混合发电系统的经济性和效益。通过介绍遗传算法和粒子群算法的原理及其在该问题中的应用,并进行实验验证,展示了双层储能容量优化配置的有效性和优越性。本人亲子编写,可修改,上层用遗传算法出容量配置,下层粒子群算法出运行调度计划,以成本最低得到含抽水蓄能机组的混合发电系统的调峰经济调度模型。

Python-PyCharm 报错解决:ImportError: cannot import name 'InteractiveConsole' from 'code'-程序员宅基地

文章浏览阅读5.4k次。此文首发于我的个人博客:Python-PyCharm 报错解决:ImportError: cannot import name ‘InteractiveConsole’ from ‘code’ — zhang0peter的个人博客早上在用PyCharm跑Python代码时遇到报错:Traceback (most recent call last): File "C:\Users\pete..._importerror: cannot import name 'interactiveconsole' from 'code

Layui下拉框赋值,局部刷新_layui刷新下拉框-程序员宅基地

文章浏览阅读645次。Layui下拉框_layui刷新下拉框

如何通过Vue.js脚手架工具搭建Vue.js项目_npm 安装脚手架-程序员宅基地

文章浏览阅读806次,点赞16次,收藏20次。通过npm全局安装@vue/cli脚手架 ,@3.10表示下载某个指定版本,如果不写,则默认下载最新版本。如果已经安装了 vue-cli (1.x或者2.x) ,需要先卸载,再重新全局安装vue-cli。(首次使用安装 vue 脚手架可跳过此步骤)_npm 安装脚手架

推荐文章

热门文章

相关标签