Android自定义View面试总结

📅 2026/8/27 12:21:12
Android自定义View面试总结
自定义view是在Android中非常重要的知识点也是面试官喜欢考察的面试题。很多人面试之前可能没有在互联网公司工作过或者说工作过但年头较短不知道互联网公司技术面试关于自定义view都会问哪些问题再加上可能自己准备也不充分去面试没几个回合就被面试官几个问题打蒙了最后以惨淡收场。那么面试官关于自定义View通常都喜欢问那些问题呢下述是我整理的Android View知识点以及常见面试题汇总自定义View基础View的分类View类简介AttributeSet与自定义属性View视图结构Android坐标系View位置坐标描述位置获取方式Android中颜色相关内容View树的绘制流程View树的绘制流程是谁负责的view的添加view的绘制流程measurelayoutdrawLayoutParamsMarginLayoutParamsLayoutParams与View如何建立联系addView自定义LayoutParamsLayoutParams常见的子类MeasureSpecMeasureSpecs 的意义MeasureSpec值的确定View绘制面试真题View绘制流程MeasureSpec是什么子View创建MeasureSpec创建规则是什么自定义Viewwrap_content不起作用的原因在Activity中获取某个View的宽高有几种方法为什么onCreate获取不到View的宽高Android绘制和屏幕刷新机制原理Choreography原理什么是双缓冲为什么使用SurfaceView什么是SurfaceViewView和SurfaceView的区别SurfaceView为什么可以直接子线程绘制getWidth()方法和getMeasureWidth()区别invalidate() 和 postInvalidate() 方法的区别自定义 View 的流程和注意事项自定义View如何考虑机型适配自定义控件优化方案invalidate怎么局部刷新View事件分发面试真题View事件分发机制view的onTouchEventOnClickListerner和OnTouchListener的onTouch方法 三者优先级onTouch 和onTouchEvent 的区别ACTION_CANCEL什么时候触发事件是先到DecorView还是先到Window点击事件被拦截但是想传到下面的View如何操作如何解决View的事件冲突在 ViewGroup 中的 onTouchEvent 中消费 ACTION_DOWN 事件ACTION_UP事件是怎么传递Activity ViewGroup和View都不消费ACTION_DOWN,那么ACTION_UP事件是怎么传递的ViewpagerFragment面试真题Fragment的生命周期 结合Activity的生命周期Activity和Fragment的通信方式 Fragment之间如何进行通信为什么使用Fragment.setArguments(Bundle)传递参数FragmentPageAdapter和FragmentStatePageAdapter区别及使用场景fragment懒加载ViewPager2与ViewPager区别fragment嵌套问题RecycleView面试真题RecyclerView的多级缓存机制,每一级缓存具体作用是什么,分别在什么场景下会用到哪些缓存RecyclerView的滑动回收复用机制RecyclerView的刷新回收复用机制RecyclerView 为什么要预布局ListView 与 RecyclerView区别RecyclerView性能优化WebView面试真题如何提高WebView加载速度WebView与 js的交互WebView的漏洞JsBridge原理文末我一直觉得技术面试不是考试考前背背题发给你一张考卷答完交卷等通知。首先技术面试是一个 认识自己 的过程知道自己和外面世界的差距。更重要的是技术面试是一个双向了解的过程要让对方发现你的闪光点同时也要 试图去找到对方的闪光点因为他以后可能就是你的同事或者领导所以面试官问你有什么问题的时候不要说没有了要去试图了解他的工作内容、了解这个团队的氛围。找工作无非就是看三点和什么人、做什么事、给多少钱要给这三者在自己的心里划分一个比例。最后祝愿大家在这并不友好的环境下都能找到自己心仪的归宿感谢您阅读这篇文章如果可以收到您的点赞我将非常荣幸希望我们可以成为朋友一起分享交流Android技术。自定义view是在Android中非常重要的知识点也是面试官喜欢考察的面试题。很多人面试之前可能没有在互联网公司工作过或者说工作过但年头较短不知道互联网公司技术面试关于自定义view都会问哪些问题再加上可能自己准备也不充分去面试没几个回合就被面试官几个问题打蒙了最后以惨淡收场。那么面试官关于自定义View通常都喜欢问那些问题呢下述是我整理的Android View知识点以及常见面试题汇总自定义View基础View的分类View类简介AttributeSet与自定义属性View视图结构Android坐标系View位置坐标描述位置获取方式Android中颜色相关内容View树的绘制流程View树的绘制流程是谁负责的view的添加view的绘制流程measurelayoutdrawLayoutParamsMarginLayoutParamsLayoutParams与View如何建立联系addView自定义LayoutParamsLayoutParams常见的子类MeasureSpecMeasureSpecs 的意义MeasureSpec值的确定View绘制面试真题View绘制流程MeasureSpec是什么子View创建MeasureSpec创建规则是什么自定义Viewwrap_content不起作用的原因在Activity中获取某个View的宽高有几种方法为什么onCreate获取不到View的宽高Android绘制和屏幕刷新机制原理Choreography原理什么是双缓冲为什么使用SurfaceView什么是SurfaceViewView和SurfaceView的区别SurfaceView为什么可以直接子线程绘制getWidth()方法和getMeasureWidth()区别invalidate() 和 postInvalidate() 方法的区别自定义 View 的流程和注意事项自定义View如何考虑机型适配自定义控件优化方案invalidate怎么局部刷新View事件分发面试真题View事件分发机制view的onTouchEventOnClickListerner和OnTouchListener的onTouch方法 三者优先级onTouch 和onTouchEvent 的区别ACTION_CANCEL什么时候触发事件是先到DecorView还是先到Window点击事件被拦截但是想传到下面的View如何操作如何解决View的事件冲突在 ViewGroup 中的 onTouchEvent 中消费 ACTION_DOWN 事件ACTION_UP事件是怎么传递Activity ViewGroup和View都不消费ACTION_DOWN,那么ACTION_UP事件是怎么传递的ViewpagerFragment面试真题Fragment的生命周期 结合Activity的生命周期Activity和Fragment的通信方式 Fragment之间如何进行通信为什么使用Fragment.setArguments(Bundle)传递参数FragmentPageAdapter和FragmentStatePageAdapter区别及使用场景fragment懒加载ViewPager2与ViewPager区别fragment嵌套问题RecycleView面试真题RecyclerView的多级缓存机制,每一级缓存具体作用是什么,分别在什么场景下会用到哪些缓存RecyclerView的滑动回收复用机制RecyclerView的刷新回收复用机制RecyclerView 为什么要预布局ListView 与 RecyclerView区别RecyclerView性能优化WebView面试真题如何提高WebView加载速度WebView与 js的交互WebView的漏洞JsBridge原理文末我一直觉得技术面试不是考试考前背背题发给你一张考卷答完交卷等通知。首先技术面试是一个 认识自己 的过程知道自己和外面世界的差距。更重要的是技术面试是一个双向了解的过程要让对方发现你的闪光点同时也要 试图去找到对方的闪光点因为他以后可能就是你的同事或者领导所以面试官问你有什么问题的时候不要说没有了要去试图了解他的工作内容、了解这个团队的氛围。找工作无非就是看三点和什么人、做什么事、给多少钱要给这三者在自己的心里划分一个比例。最后祝愿大家在这并不友好的环境下都能找到自己心仪的归宿感谢您阅读这篇文章如果可以收到您的点赞我将非常荣幸希望我们可以成为朋友一起分享交流Android技术。欢迎大家一键三连支持若需要文中资料直接点击下方CSDN官方认证微信卡片免费领取【保证100%免费】↓↓↓