█ 【安卓学习之UI学习】 自定义组合控件View 的开发
█ 相关文章:
-
● 【android学习开源项目之BasePopup】BasePopup(PopupWindow)进行二次封装
● 【android学习开源项目之AndroidAutoSize】AndroidAutoSize和DialogFragment的适配
● 【安卓学习之UI学习】 自定义组合控件View 的开发
● 【安卓学习之UI学习】 自定义 弧形等级进度条
█ 读前说明:
-
● 本文通过学习别人写demo,学习一些课件,参考一些博客,’学习相关知识,如果涉及侵权请告知
● 本文只简单罗列相关的代码实现过程
● 涉及到的逻辑以及说明也只是简单介绍,主要当做笔记,了解过程而已
● demo下载传送门
█ 我的问题(重复的,多次使用的)
● 在开发过程中经常用到一些ui设计是重复的,多次使用的,而功能又相对比较统一的,因此需要自己设计一些自定义组合控件,方便复制粘贴,也方便后期修改一次,全部都跟着修改,在这边我需要三种常见的自定义控件,如下:
● 自定义多选控件:
● 自定义键盘控件:
● 自定义设置编辑控件:
█ 解决问题(共享layout或自定义view):
● 方法一,共享layout.xml布局文件(通过include进行导入ui界面)
比如写了一个通用的界面头部导航栏include_header_ui.xml,
然后其他每个界面都去include这个文件,其实这种方法,在早期很多人都会这样来开发的
<include layout="@layout/include_header_ui"/>
这样是可以实现ui共享,但是ui的相关动作等java方法就不方便共享。
● 方法二,自定义view(可以直接写进View在xml中)
早期用include写的ui,后期很多人都修改为自定义view
xmlns:app="http://schemas.android.com/apk/res-auto"
<com.bixia.customviewtest.wedget.BiXiaView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
app:title_content="8亿人在用的即时通讯软件"
app:title_pic="@mipmap/bx_tengxun"
app:title_text="腾讯" />
这种写起来相对比较麻烦,复杂,但是后期使用起来却很方便,ui统一,功能统一,而且还可以进行扩展,一个view可以对应多种不同的ui;
● 方法三,使用ListView、RecyclerView等控件 (需要再同一个界面中)
通常是网格、列表形式,多采用该种方式
这种遍历的方式也是相对很常见的。
█ 自定义view:
● 刚开始我采用第一种include方式,后面用的次数多了,就修改为第二种自定义View方式。
● 待增加 ● ● ● ● ● ●
█ 相关资料:
● 1.2018-05-10 Android自定义View全解 - 銀灬楓 - 简书
● 2.2018-03-27 GridLayout 使用总结 - 草帽团长 -
简书
● 3.2019-07-04 网格布局(GridLayout) - 不靠谱的老肖 -简书
转载请注明出处:
https://blog.csdn.net/ljb568838953/article/details/104752321