UI
戒不掉的码瘾
业精于勤,荒于嬉;骐骥一跃,不能十步;驽马十驾,功在不舍
展开
-
自定义UI——沉浸式状态栏
从Android4.4开始出现相关API之后,沉浸式状态栏算是我们APP的标配了,随着Android的API的优化,5.0又是一个分水岭。现整理了一下状态栏导航栏是否存在以及颜色设置,高度获取的相关方法工具类,以便后续之需。package com.demo.statusdemo;import android.app.Activity;import android.content.Con...原创 2018-07-30 15:21:44 · 1089 阅读 · 0 评论 -
自定义流布局FlowLayout
流布局的核心思想就是把每一行看做一个对象,给其动态添加子view,通过计算添加View的宽的总和与行宽比较,从而继续添加或者换行显示。 自定义FlowLayout:<span style="font-size:14px;">package com.example.mydemo;import java.util.ArrayList;import java....原创 2016-10-19 11:01:44 · 597 阅读 · 0 评论 -
动画——Android弹出菜单动画
最近项目需要在底部按钮点击弹出菜单,再点击菜单隐藏,如下图: 先上代码:XML文件 直接将图片叠在一起,点击图片在最上面:<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" a原创 2016-11-14 14:12:30 · 1113 阅读 · 0 评论 -
ViewFilpper实现多个TextView上下滚动
在开发中TextView可以自实现跑马灯,如果是多个TextView循环滚动(一些通知消息),可以采用ViewFilpper控件来实现。![效果图](http://img.blog.csdn.net/20161124161429314)public class MainActivity extends AppCompatActivity { private ViewFlipper vp;原创 2016-11-23 18:31:09 · 2030 阅读 · 2 评论 -
带输入框DIalog自动弹出软键盘
在自定义带输入框Dialog时,每次都需要点击输入框后获取焦点才能弹出软键盘,一般需求都是弹出dialog时自动弹出键盘,于是通过代码主动请求获取焦点,代码如下: @Override public void show() { super.show(); edittext.setFocusable(true); edittext.setFocus原创 2017-02-20 16:58:14 · 2896 阅读 · 0 评论 -
自定义Toast
Toast在开发过程中的使用频率相对是比较高的,有时候为了美观需要我们自己去自定义如上图的图片加文本的Toast,其实像自定义Dialog一样只需填充View即可。 自定义代码 /** * 自定义Toast * * @param context 上下文 * @param content 文本内容 * @param res 图片原创 2017-02-22 10:17:55 · 334 阅读 · 0 评论 -
Android底部弹出PopupWindow被菜单栏遮挡问题以及窗体亮度设置
Android手机大多数都有底部菜单栏,在我们设置底部弹出popupwindow时会遇到被菜单栏遮挡的问题,如下图(华为P8):![小叉叉被挡住了](http://img.blog.csdn.net/20170306141606017?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2FuZ19rNTE2/font/5a6L5L2T/fontsize/4原创 2017-03-06 14:24:17 · 3691 阅读 · 0 评论 -
RecyclerView中CheckBox复用以及选中消失的问题
RecyclerView的复用问题已经不再是什么棘手的问题,前段时间遇到再item中使用CheckBox时,在滑动过程中之前选中的CheckBox在重新显示的时候选中状态消失了。 首先我们先解决复用问题,通过一个selectList集合来存储选中的CheckBox对应的数据对象,给条目item设置Tag值: final Object obj= mDatas.get(position);原创 2017-03-08 17:21:08 · 4244 阅读 · 1 评论 -
引导页添加小圆点以及滑动进入主页面
APP大多数在引导页都是一些炫图加导航小圆点,在最后一页直接滑动进入主界面。 首先介绍小圆点的添加: XML布局:<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="原创 2017-04-28 14:05:59 · 1435 阅读 · 0 评论 -
自定义UI——流布局
流布局的实现是熟悉自定义控件流程一个比较好的例子,在代码中详细注释:代码:public class MyFlowLayout extends ViewGroup { //每一行行高集合 List<Integer> heights = new ArrayList<>(); //每一行子view的集合 List<Li...原创 2018-06-28 17:11:56 · 565 阅读 · 0 评论 -
RecyclerView的侧滑删除和长按交换位置
RecyclerView的使用越来越广泛,同时围绕条目列表的功能操作也很多,通过ItemTouchHelper可以对条目进行滑动删除和长按交换位置。首先,定义一个删除和改变条目的接口,在adapter实现public interface ItemTouchHelperInter { //调换位置 void onItemChange(int fromPos, int toP...原创 2018-07-09 17:28:05 · 764 阅读 · 0 评论 -
自定义UI——网络加载的自定义View
我们在开发过程中网络加载通过异步加载加上弹窗、自定义各种progressbar、自定义动画view来解决用户等待时的体验问题,下面介绍一种本人学习时写的自定义的view:该过程动画主要分三部分,加载时的小圆旋转,加载完成先聚合然后扩散消失显示布局内容,下面看代码:package com.demo.loadview;import android.animation.Animator;...原创 2018-07-24 21:22:42 · 438 阅读 · 0 评论 -
自定义UI——带文字进度条的绘制
直接上效果:分五部分:绘制文字、绘制已完成进度,间隙,未完成进度,下面的小三角 @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); //画文字 drawText(canvas); progress = textWidth *...原创 2019-03-18 14:37:30 · 573 阅读 · 0 评论