自定义view
lidongxiu0714
https://github.com/hpuzzuldx/
展开
-
RecycleView 学习 4 GridLayoutManager ItemTouchHelper 实现频道 管理
新闻客户端需要新闻频道管理,这次重复造轮子实现频道管理,用到了RecycleView,GridLayoutManager,ItemTouchHelper;package com.ldx.channel;import android.support.v7.widget.GridLayoutManager;import android.support.v7.widget.RecyclerVie...原创 2018-11-07 10:53:44 · 3415 阅读 · 0 评论 -
TextView富文本学习四 - 设置了SpannableString并设置了maxLines,内容变得可滑动解决办法
TextView设置了ClickableSpan并设置了maxLines,ellipsize="end"后,TextView的内容可滑动,当点击ClickableSpan的文本时TextView的内容也会自己滚动,很明显不符合大部分场景。要使ClickableSpan的click事件生效必须设置了MovementMethod,内部使用了LinkMovementMethod实例。如何禁止滑动?网...原创 2019-05-08 10:55:13 · 2871 阅读 · 0 评论 -
TextView富文本学习三-设置了ClickableSpan后与TextView click事件冲突
1 TextView设置了ClickableSpan,TextView宽度为match_parent时,会产生如下问题:第一个问题如果设置的Span文本没有填满match_parent,此时点击空白处也会执行clickableSpan的click函数;第二个问题是如果添加的文本超过了match_parent,此时点击TextView中没有添加ClickableSpan的文本,click事件会...原创 2019-05-08 10:52:27 · 3352 阅读 · 0 评论 -
自定义View之测量onMeasure 一
1 View默认的onMeasure实现自定义View(ViewGroup)重要的三个步骤:测量,布局(只在ViewGroup中),绘制,在Android绘图的专题中已经对绘制进行了讲解,今天主要学习View的测量,View的测量主要对view进行测量,确定view的测量尺寸。public class MeasureDemo extends View { Paint paint ;...原创 2019-04-09 15:43:06 · 2792 阅读 · 1 评论 -
Android LayoutParams 学习一
1 如何添加View或者ViewGroup到ViewGroup中两种方式可以添加View或者ViewGroup到ViewGroup中,一种是xml布局文件中,一种是动态代码添加。两个View在RelativeLayout中一左一右的布局:<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android=...原创 2019-04-09 15:36:32 · 2529 阅读 · 0 评论 -
自定义View的四个构造函数
自定义View继承View或者ViewGroup都会让我们实现构造函数,通常会实现一个参数的构造函数,两个参数的构造函数和三个参数的构造函数,它们有什么区别,又为什么要实现这么多构造函数呢?public class DemoView77 extends View { public DemoView77(Context context) { super(context);...原创 2019-03-29 13:51:16 · 5077 阅读 · 1 评论 -
Android自定义View 之自定义属性
1 自定义属性值自定义view的起步是自定义属性,并且正确的读取属性。在res/values/attrs.xml的文件中创建属性: <declare-styleable name="ViewDemoAttr35"> <attr name="string35" format="string"/> <attr name="bool...原创 2019-03-28 16:53:15 · 6040 阅读 · 0 评论 -
getHeight,getWidth,getMeasuredHeight,getMeasureWidth
源码分析 /** * Like {@link #getMeasuredHeightAndState()}, but only returns the * raw height component (that is the result is masked by * {@link #MEASURED_SIZE_MASK}). * * @ret...原创 2019-03-28 13:56:52 · 2574 阅读 · 0 评论 -
RecycleView 学习2 SnapHelper指定View滑动后对齐方式
新增了SnapHelper辅助类,可以实现在滚动结束时item的对齐方式,时间方式如下:new LinearSnapHelper().attachToRecyclerView(mRecyclerView);//或者new PagerSnapHelper().attachToRecyclerView(mRecyclerView);两种SnapHelper,功能类似,PagerSnapHel...原创 2018-11-07 17:35:23 · 5018 阅读 · 0 评论 -
RecycleView学习1 item动画
RecycleView设置动画方式.setItemAnimator(),sdk提供了默认的动画DefaultItemAnimator,要实现自定义动画需要实现SimpleItemAnimator。需要实现下列方法:@Override public boolean animateRemove(RecyclerView.ViewHolder holder) { return...原创 2018-11-07 11:10:40 · 545 阅读 · 0 评论 -
RecycleView学习3 ItemDecoration 自定义
RecycleView ItemDecoration设置RecycleView 间隔,设置方式public class DividedLinerDecorator extends RecyclerView.ItemDecoration { private Paint mPaint; private Drawable mDivider; private int mDivid...原创 2018-11-07 11:04:46 · 2822 阅读 · 0 评论 -
TextView富文本学习五 - 设置了SpannableString后设置了maxLines,ellipsize=end失效
TextView设置了ClickableSpan并设置了maxLines,ellipsize="end"后内容可滑动的问题已经解决了,但ellipsize=”end”并没有效果,三行结束的位置并没有出现…stackoverflow有关于这个问题的讨论:https://stackoverflow.com/questions/14691511/textview-using-spannable-el...原创 2019-05-08 10:58:02 · 4764 阅读 · 2 评论