关闭

自定义View

108人阅读 评论(0) 收藏 举报

自定义一个MyView继承于ViewGroup,在布局文件中引用,通过view的onMeasure()方法,可获得一些view的相关属性,如View的宽(高)度模式,宽高(单位为像素,在布局文件中给出来的),如下:

        int withMode = MeasureSpec.getMode(widthMeasureSpec);
        int withSize = MeasureSpec.getSize(widthMeasureSpec);
        int heightMode = MeasureSpec.getMode(heightMeasureSpec);
        int heightSize = MeasureSpec.getSize(heightMeasureSpec);

以上借助了MeasureSpec类,宽高模式mode的返回值(getMode获得)有三种:

  • EXACTLY:一般是设置了明确的值或者是MATCH_PARENT
  • AT_MOST:表示子布局限制在一个最大值内,一般为WARP_CONTENT
  • UNSPECIFIED:表示子布局想要多大就多大,很少使用,比如在管理端项目中就使用到了(当自定义的view是listview等类似的view时可能用此参数)

最后通过setMeasuredDimension(int width,int height)设置view的最终绘制宽高

0
0
查看评论

自定义View,有这一篇就够了

我的简书同步发布:自定义View,有这一篇就够了 为了扫除学习中的盲点,尽可能多的覆盖Android知识的边边角角,决定对自定义View做一个稍微全面一点的使用方法总结,在内容并没有什么独特,其他大神们的博客上面基本上都有讲这方面的内容,如果你对自定义View很熟了,那么就不用往下看啦~。如果对自定...
  • huachao1001
  • huachao1001
  • 2016-06-03 15:08
  • 37785

Android自定义view详解

对于我这样一个Android初级开发者来说,自定义View一直是一个遥不可及的东西,每次看到别人做的特别漂亮的控件,自己心里那个痒痒啊,可是又生性懒惰,自己不肯努力去看书,只能望而兴叹,每次做需求用到自定义控件,就直接去Github上找,找到合适的就用,找不到合适的,凑合也用,反正从来没想过要自己来...
  • pengpenggxp
  • pengpenggxp
  • 2016-07-11 17:39
  • 3218

简单说说Android自定义view学习推荐的方式

这几天比较受关注,挺开心的,嘿嘿。 这里给大家总结一下学习自定义view的一些技巧。 1.首先 去看看鸿洋神的博客 Android 自定义view(1). 鸿洋神的入门教程讲的很详细。再次膜拜。 然后我这里对上面博客补充一些内容,那就是MeasureSpec相关的一些东西,这些东西...
  • wingichoy
  • wingichoy
  • 2016-01-08 15:24
  • 8163

自定义view学习(一)---自定义view

一直感觉会自定义view很牛掰,在毕设项目中多处用到自定义控件,但都是在别人的框架上造轮子,一直打算总结一下自定义控件的实现方式,今天就来总结一下吧。 回到主题,自定义View ,需要掌握的几个点是什么呢?  我们先把自定义View细分一下,分为两种  1) 自定义Vi...
  • qq_31881469
  • qq_31881469
  • 2017-03-30 16:47
  • 688

安卓自定义View教程目录

这是一个从零起步,从入门到懵逼的自定义View教程。本教程从最基础的内容讲解,并且深入到了相关的各个细节,不论你是刚入门的菜鸟,还是有一定经验的工程师相信本系列文章都会对你有所帮助。 你既可以将本教程当作学习资料来学习自定义View相关的各种知识,也可以作为工具来使用,在需要的时候查询相关的知识细...
  • osle123
  • osle123
  • 2016-10-08 14:49
  • 1428

Android自定义View(二、深入解析自定义属性)

转载请标明出处: http://blog.csdn.net/xmxkf/article/details/51454685 本文出自:【openXu的博客】 [TOC] 在上一篇博客《Android自定义View(一、初体验)》中我们体验了自定义控件的基本流程: 继承V...
  • u010163442
  • u010163442
  • 2016-05-21 03:53
  • 18684

Android自定义View的用法总结

本文参考了:http://greenrobot.me/devpost/android-custom-layout/ Android SDK中提供了很多UI组件,如RelativeLayout, LinearLayout等,使用自定义控件有两大优点: 1、通过减少View的使用来增加UI的显示效...
  • bigconvience
  • bigconvience
  • 2015-05-23 15:55
  • 4294

Android 自定义View入门

在android应用开发过程中,固定的一些控件和属性可能满足不了开发的需求,所以在一些特殊情况下,我们需要自定义控件与属性。 一、实现步骤  1. 继承View类或其子类   2. 复写view中的一些函数 3.为自定义View类增加属性(两种方式) 4.绘制控件(导入布局) 5.响应用户事件 6....
  • Amazing7
  • Amazing7
  • 2016-05-03 14:49
  • 7708

Android自定义View 一<最简单的自定义View>

为什么要自定义Viewandroid提供了很多控件供我们使用 但有些功能是系统所提供的实现不 了的 这时候我们就需要自定义一个View来实现我们所需要的效果. 在Android中所有的控件都直接或间接的继承自View,分View和ViewGroup两部分. 我们常用的一些View比如T...
  • qq_36209474
  • qq_36209474
  • 2017-03-19 15:39
  • 1060

自定义view入门

如何自定义控件主要分为以下几个步骤: 1、自定义属性的声明与获取 (1)分析需要的自定义属性 (2)在res/values/attrs.xml定义声明,如 (3)在layout xml文件中进行使用 (4)在view的构造方法中进行获取 2、测量onMewsure 3、布局onLayout...
  • XSF50717
  • XSF50717
  • 2016-01-16 21:21
  • 1984
    个人资料
    • 访问:9485次
    • 积分:436
    • 等级:
    • 排名:千里之外
    • 原创:36篇
    • 转载:0篇
    • 译文:0篇
    • 评论:1条
    文章分类
    文章存档
    最新评论