博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android在onCreate()中获得控件尺寸
阅读量:6264 次
发布时间:2019-06-22

本文共 1829 字,大约阅读时间需要 6 分钟。

hot3.png

@Override   public void onCreate(Bundle savedInstanceState) {       super.onCreate(savedInstanceState);       setContentView(R.layout.main);       final ImageView imageView = (ImageView) findViewById(R.id.imageview);             int w = View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED);       int h = View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED);       imageView.measure(w, h);       int height =imageView.getMeasuredHeight();      int width =imageView.getMeasuredWidth();      textView.append("\n"+height+","+width);      System.out.println("执行完毕.."+System.currentTimeMillis());   }

//------------------------------------------------方法一 

int w = View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED); int h = View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED); imageView.measure(w, h); int height =imageView.getMeasuredHeight(); int width =imageView.getMeasuredWidth(); textView.append("\n"+height+","+width);

 

//-----------------------------------------------方法二 (亲测可用!在onStart()方法中调用)

ViewTreeObserver vto = imageView.getViewTreeObserver(); vto.addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {     public boolean onPreDraw() {         int height = imageView.getMeasuredHeight();         int width = imageView.getMeasuredWidth();         textView.append("\n"+height+","+width);         return true;     } });

//-----------------------------------------------方法三    

ViewTreeObserver vto2 = imageView.getViewTreeObserver();   vto2.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {     @Override       public void onGlobalLayout() {         imageView.getViewTreeObserver().removeGlobalOnLayoutListener(this);           textView.append("\n\n"+imageView.getHeight()+","+imageView.getWidth());     }   });

转载于:https://my.oschina.net/fuckboogie/blog/289750

你可能感兴趣的文章
android中用ExpandableListView实现三级扩展列表
查看>>
%Error opening tftp://255.255.255.255/cisconet.cfg
查看>>
java读取excel、txt 文件内容,传到、显示到另一个页面的文本框里面。
查看>>
《从零开始学Swift》学习笔记(Day 51)——扩展构造函数
查看>>
python多线程队列安全
查看>>
[汇编语言学习笔记][第四章第一个程序的编写]
查看>>
android 打开各种文件(setDataAndType)转:
查看>>
补交:最最原始的第一次作业(当时没有选上课,所以不知道)
查看>>
Vue实例初始化的选项配置对象详解
查看>>
PLM产品技术的发展趋势 来源:e-works 作者:清软英泰 党伟升 罗先海 耿坤瑛
查看>>
vue part3.3 小案例ajax (axios) 及页面异步显示
查看>>
软件测试(二)之 Failure, Error & Fault
查看>>
浅谈MVC3自定义分页
查看>>
.net中ashx文件有什么用?功能有那些,一般用在什么情况下?
查看>>
select、poll、epoll之间的区别总结[整理]【转】
查看>>
CSS基础知识(上)
查看>>
PHP中常见的面试题2(附答案)
查看>>
角色权限分配
查看>>
明小子动力上传拿webshell.zip
查看>>
ES6 Module export与import复合使用
查看>>