FOD工具控:我跟你说个锤子!

漂白柄美式圆头锤 American-type Ball Hammer with Bleaching Handle

办法二、使用 View.post() 将任务post到音讯队列中,当view先河化完毕后looper会执行任务。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_my_view);
    myview = ViewUtils.find(this, R.id.myview);
    // 方案二、将任务post到消息队列中,当view初始化完毕后looper会执行任务
    myview.post(new Runnable() {
        @Override
        public void run() {
            getViewSize("post");
        }
    });
}

铁锈留下的是时刻

在 Activity 的 onCreate() 方法中为什么得到 View 的宽和高为0 ?

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_my_view);
    myview = ViewUtils.find(this, R.id.myview);
    getViewSize("onCreate");
}
private void getViewSize(String methodTag) {
    int width = myview.getWidth();
    int height = myview.getHeight();

    Log.i(TAG, methodTag + ": width=" + width + " | height=" + height);
}

log如下:

12-15 17:04:55.470 29286-29286/cn.codingblock.view I/MyViewActivity: onCreate: width=0 | height=0

如下边代码结果所示,在Activity的onCreate()方法中大家品尝得到控件的宽和高,却获取得是0,这是因为
View 绘制和 Activity 的生命周期方法并不一起,虽然 Activity 回调了
onCreate()、onStart()、onResume() 方法,View
也不必然一起完成绘制,所以那时在这多少个主意里面获取 View
的尺码时就获取不到,解决方法有以下二种:

德式纤维柄钳工锤German Type Machinist Hammer With

办法一、在 Activity 的 onWindowFocusChanged() 方法中赢得 View 的尺码。

在 Activity 中,当对所有的 View 初始化完毕后,会回调 onWindowFocusChanged() 方法。

/**
 * 方案一
 * 当 View 初始化完毕是回调
 * 当 Activity 每次获取和失去焦点时回调
 * @param hasFocus
 */
@Override
public void onWindowFocusChanged(boolean hasFocus) {
    super.onWindowFocusChanged(hasFocus);
    getViewSize("onWindowFocusChanged");
}

工具作坊

方法三、可以行使 ViewTreeObserver 的一部分监听接口。

例如:当 View 树的状态或者 View 树内部的 View 的可见性发生改变时,ViewTreeObserver.OnGlobalLayoutListener 接口的 onGlobalLayout() 会被回调,可以在此方法内部获取 View  的尺寸。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_my_view);
    myview = ViewUtils.find(this, R.id.myview);
    // 方案三、当 View 树的状态或者 View 树内部的 View 的可见性发生改变时,
    // ViewTreeObserver.OnGlobalLayoutListener 接口的 onGlobalLayout() 会被回调,
    // 可以在此方法内部获取 View  的尺寸
    ViewTreeObserver observer = myview.getViewTreeObserver();
    observer.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
        @Override
        public void onGlobalLayout() {
            getViewSize("onGlobalLayout");
        }
    });
}

当然除了上述措施之外还会有此外的主意,例如能够利用延时仍然在onCreate()方法中手动调用
View 的测量方法,相对而言以上二种方法更加有利。


终极想说的是,本体系随笔为博主对Android知识展开双重梳理,查缺补漏的读书过程,一方面是对协调忘记的事物加以复习重新掌握,另一方面相信在重新学习的长河中定会有远大的新拿到,假若您也有跟我一样的想法,不妨关心自身一同读书,相互研究,共同进步!

参考文献:

  • 《Android开发格局探索》
  • 《Android开发进阶从小工到专家》

德式钳工锤German Type Machinist Hammer

读书原文😉

喜欢独具匠心,喜欢别具匠心,当然,我更欣赏女子。人们说女生如水,女孩子如诗,都美,假设把针线换成锤子在这砸的镜头,其实你忘了这是留意的美,不管男人女孩子,认真就好,从事就好,喜欢就好。

专注

——來自網絡

锤子是历史的缩影,它兼具的工艺价值和文物价值,都是大家的待解之谜。

汇编作品部分文字資料來自网络,引用文字和图纸版权归属为原网站及作者所有,如有侵权请联系。原创文字及翻译版权归工具控原作者所有。

羊角锤 Claw Hammer

自家跟你说个锤子!

美式八角锤扁尾American Type Cross Pein Hammer With Fiber glass Handle LE

锤子的趣闻

钢管柄钳工锤Machinist’s Hammer With Turular Steel Handle

锤具匠心

电焊锤Welding Hammer

本文由以下FOD工具控病友会成员汇编

留意的去做点东西,至少,对得起生活的时光,锤子依旧在这。

不是相对的研商,不明白它的来路,只领会怎么去用它。当然,不小心砸到祥和的手,可并不算什么正经用途。做东西的时候,可离不开它。因为顺手所以挑剔,拿着宝石敲来敲去,必须谨言慎行,因为砸碎就象征生活,我们重申,完成时那种成就显明,可曾也想过它也在和您一起笑容可掬。

木柄圆头锤 Engineer’s Ball Pein Hammer

民间有位名为王孝立的莘莘学子,就把锤子视若珍宝。他用3年寒暑收藏了4000多把大大小小、外形各异的榔头。在众人好奇、诧异、莫名其妙的秋波中,王老知识分子为他的锤子收藏“一锤定音”:每一种锤子都表示着一种手艺和麻烦情势,它们是历代能工巧匠劳动的工具,劳动创制了历史,收藏锤子,正是用另一种更有血有肉的款式沉淀并记下历史。

生活里太多的锤子被人们忽视,大的小的,圆的方的……因为我们就从不离开过它,可我们就是没在意过。像我们身边的人一样,普通的不可能再常见,可在匠人眼里,它就是无可比拟的,而大家自己在别人眼里也是惟一的。

这一般是篇很庄严的文章,但瓜达拉哈拉的意中人说了她们的白话里什么是锤子,立刻心里七上去了八没下去,好呢,锤子就是锤子,就是用手控制的工具,远比自己给您下面吃来的好听点。

钳工锤Machinists Hammer

珍视锤子,因为它能敲打出一个世界,一个完结,一种文化,或许说的太高大,但仍旧喜欢它骨子里本来的东西——它是个物件,帮忙大家能做东西的工具。

木锤可让著作更轻盈

木工锤 Joiner’sHammer

美式八角锤American Type sledge Hammer With Fiber glass Handle LE

美式纤维柄圆头锤 American-type Ball Hammer with Fibre Glass Handle

2016-03-04请关注微信号:FOD工具控😉

锤子,它该属于一种工具,但在设计师眼里它该是艺术,而在匠人眼里,它该是物件的魂魄。

关注该群众号

锤子的序列

英式圆锥羊角锤British Type Claw Hammer

锤子定义:英文名:Hammer它是敲打物体使其运动或变形的工具,最常用来敲钉子,矫正或是将物件敲开。锤子有着各类各类的款式,常见的款式是一柄把手以及顶部。顶部的一面是平缓的以便敲击,另一面则是锤头。锤头的样子可以像羊角,也足以是楔形,其效用为拔出钉子。其它也富有圆头形的锤头。

八角锤Double Faced Black smith’s Hammer

钢管柄羊角锤 Claw Hammer with Steel Handle

美式纤维柄羊角锤 American type Claw Hammer

微信扫一扫

英式纤维柄圆头锤 Engineer’s Ball Pein Hammer With Fibre Glandle

石工锤Club Hammer

扁尾锤Engineer’s Cross Pein Hammer

德式钢管柄钳工锤German Type Machinist’s Hammer With Turular Steel Handle

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图