自定义控件
文章平均质量分 83
SelenaAction
这个作者很懒,什么都没留下…
展开
-
带清除功能的EditText
在很多情况下,我们都会遇到需要清除编辑框的情况,特别是编辑内容过多时,一字字删除过于麻烦,所以如果编辑框自带按钮可以清除数据就再好不过了。本篇文章将对此有所讲解,方便大家学习与巩固。我们都知道自定义控件的实现方式有三种,分别是:组合控件、自绘控件和继承已有控件。本篇涉及的控件就是通过继承已有控件的方式予以实现的。以下是小编的效果图:具体实现步骤如下:1、首先新建一个类继承E原创 2017-06-22 15:59:52 · 508 阅读 · 0 评论 -
自定义TextView,实现文本展开与收起
目录1、功能2、思路 / 方法3、设计实现 3.1 变量说明:3.2 自定义View具体步骤3.3 使用自定义View 4、参考1、功能(1)支持全文展开/收起(按钮紧跟着文本后面显示,非另起一行),见下图。(2)可设置收起时最大显示行数;(3) 可设置“展开/收起”的具体文字显示、字体颜色,是否带省略点等;(4) 支持 “展开/收起”点击事件(即,后...原创 2018-08-02 10:40:48 · 1329 阅读 · 0 评论 -
Caused by: java.lang.NoSuchMethodException: <init> [class android.content.Context, interface androi
(1)问题 自定义控件时,报一下错误: Caused by: java.lang.NoSuchMethodException: <init> [class android.content.Context, interface android.util.AttributeSet](2)解决方法添加构造函数时,该方法必须复写,否则报错。public xxView(Context co...原创 2018-05-16 18:05:07 · 579 阅读 · 0 评论 -
自定义View之基础篇——常见分类与构造方法
1、自定义View的分类 (1)按照继承的基类来分,可以划分为:View 、ViewGroup。 其中View类,可以是View,也可以是具体的某个控件eg.ImageView;ViewGroup,可以是任何一个可以包含子view的容器,eg.LinearLayout。 (2)按照实现的方式分 方式 继承自 ...原创 2018-05-21 16:04:16 · 234 阅读 · 0 评论 -
Android自定义View之基础篇——坐标系
1、前言手机屏幕坐标系与数学坐标系的不同,主要留意y轴方向。2、手机坐标系(1)屏幕坐标系/Android坐标系以屏幕左上角为原点。如图所示,图中绿色边框位置为屏幕所在区域,其中绿色边框左上角为原点。(2)View坐标系如图,手机屏幕区域,即上图绿色边框围裹部分,可分为状态栏(即wifi信号、电量显示区)、标题栏、View可绘制区域。其中,标题栏和可绘制区域为我们的...原创 2018-05-14 17:51:25 · 1109 阅读 · 0 评论 -
android中dp、px、sp转换
1、通用写法:/** * 根据手机的分辨率从 dp 的单位 转成为 px(像素) */public static int dp2px(Context context, float dp) { //获取设备密度 float density = context.getResources().getDisplayMetrics().density; //4.3, 4.9, ...原创 2018-05-14 17:50:25 · 133 阅读 · 0 评论 -
Android颜色相关小知识
1、四种常见形式Bitmap.Config的几个枚举类型 ARGB_8888、ARGB_4444、GRB_565、ALPHA_8颜色模式说明每像素占用内存(byte)ARGB_8888四通道高精度(32位)4 (8bit*4=32bite=4byte)ARGB_4444 四通道低精度(24位)2 (4bit*4 =16bit=2byte)RGB_565仅存储颜色信息,无透...原创 2018-05-18 16:48:16 · 248 阅读 · 0 评论 -
自定义View之基础篇——PorterDuff
前言本章主要介绍颜色渲染器PorterDuff。PorterDuff其实来自两个人名:Tomas Porter和Tom Duff。利用PorterDuff.Mode,我们可以实现图片的任意叠加混合,eg.实现画图中的橡皮擦功能、显示圆形图片等等 1、核心代码以圆和矩形为例。dst为下层,是先画的图形(这里我选择的是灰色的圆);src为上层,后画的图形(我选用的是蓝色矩形)。实验...原创 2018-05-18 16:34:33 · 3531 阅读 · 0 评论 -
自定义View 之基础篇——获取控件宽高
1、getMeasuredHeight() 与 getHeight()getMeasuredHeight():获取控件实际高度,包括显示的部分和超出屏幕的部分。它的值与屏幕无关。getHeight():获取控件在屏幕中显示的高度一般情况下getMeasuredWidth和getWidth方法的值是一致的。使用:(1)一般情况下,除了在onLayout方法中调用getMeasuredWidth方法外...原创 2018-05-14 17:45:33 · 11830 阅读 · 1 评论 -
View的学习(一)
本章主要讲述View的几个常用方法,对于后期自定义控件非常有用。1、requestLayout()在API文档中有这样的介绍: Layout is a two pass process: a measure pass and a layout pass. The measuring pass is implemented in measure(int, int)......The second p...原创 2018-05-14 17:49:17 · 167 阅读 · 0 评论 -
使用DialogFragment,解决PopupWindow中EditText无法复制粘贴问题
问题:PopupWindow中,EditText无法使用复制粘贴功能。方法:使用DialogFragment实现。 package com.example.administrator.dialogfragmentdemo;import android.content.Context;import android.content.DialogInterface;import a...原创 2018-10-29 14:26:04 · 1118 阅读 · 0 评论