Android开发自定义UI组件一些复用的UI组件,可以通过设置模板复用,接口回调等方法提高开发效率,降低代码耦合度。自定义组件大概分为3步:  1、自定义标签属性  2、定义组件类  3、在XML界面布局使用自定义标签下面举例实现一个TopBar和一个GridItem的自定义组件。这是项目目录结构一、自定义标签属性<?xml version="1.0" enc            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-25 20:45:32
                            
                                797阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Android之自定义TextView对于自定义,我也是最近才开始学习,所以有些自定义的控件也都是在学习中,今天先来写一个简单的自定义控件TextView,这个模仿已经简单的不能再简单了。对于自定义控件,一般来说,我们首先有以下几个步奏自定义的属性获取自定义属性重写常用的方法onDraw() onMeasure() onTouchEvent()等,这些是我们一些基本的方法,具体重写哪些方法根据具体            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-02 15:36:56
                            
                                201阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
                    早之前就准备写一些自定义的玩意儿玩玩,苦于一直忙于其他的就把这事搁置起来了。最近又把这些东西翻出来了,就想着记录下来,温故而知新。        本篇文章就说一下如何一步步的实现一个时钟表盘。在网上有好的这种表盘的例子,我也大概的翻了翻,不过总有或多或少不满意的地方,最后还是决定自己手撸一个。首先看一下            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-10 08:41:49
                            
                                74阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            1、实现原理实现软键盘主要用到了系统的两个类 Keyboard 和 KeyboardView .html1. Keyboard用于监听虚拟键盘:javaLoads an XML description of a keyboard and stores the attributes of the keys. A keyboard consists of row            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-01 21:41:33
                            
                                50阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            这是整个项目的结构。下来看看My_Clock.java文件内容 
    My_Clock.java Code: 
    1. package
2.   
3. import
4. import
5.   
6. public class My_Clock extends
7. /** Called when the activity is first created. */
8. @Overr            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-10 22:08:09
                            
                                64阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一.前言官方定义:  A Behavior implements one or more interactions that a user can take on a child view. These interactions may include drags, swipes, flings, or any other gestures.  中文:  一个Behavior实现了一个或多个用户可            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-19 15:50:45
                            
                                72阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            自android 5.0发布以来,谷歌有发布的design包下的tablayout,但是需求的不同,有的时候,并不适合用这个,所以自己就自定义。  这个可以添加标题下的导航条也可不添加,可以设置根据标题文字的大小来调节该导航条的宽度。效果图所示。 这是CustomTablayout。自己通过继承HorizontalScrollView 来实现定义Tablayoutpackage com.demo.            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-25 13:59:57
                            
                                74阅读
                            
                                                        
                                点赞
                            
                                                                                    
                                1评论
                            
                                                 
                 
                
                                
                     
                                    
                             
         
            
            
            
            在此总结一下,Android Toolbar 控件的使用方法,争取总结的系统全面些。之前也只是停留在一些基本简单的用法,而且也不系统。希望爱学习的你能通过这篇文章,有所收获!Toolbar 的基本用法常用的方法xml中的设置:<android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android            
                
         
            
            
            
            android自定义动画专题二在上篇文章中给大家介绍了android自定义动画的第一种表现形式:view的绘制;不过这只是一种单纯利用自定义控件绘制的方式去实现;这篇文章会给大家演示如何通过自定义控件(测量,排版,绘制)+android原生动画的方式一起实现一些比较酷炫复杂的效果。Android自定义动画专题一 链接1.卫星菜单demo该demo实现的主要核心技术点是:继承ViewGroup实现子            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-02 20:11:09
                            
                                2阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在前一篇文章中,我们讨论了添加对数据集更改和目标滚动的适当支持。在本系列的这一部分中,我们将重点介绍如何在LayoutManager中正确地支持动画上次我们讨论了notifyDataSetChanged(),但是您可能已经注意到,以这种方式更改数据不会使更改具有动画效果。RecyclerView包含了一个用于进行动画更改的新API,它要求您通知适配器中的哪些位置已经更改,以及操作是什么:notif            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-03 15:56:41
                            
                                222阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Android自定义样式
    前言:这东西梳理过好几次,但每次到要用的时候就又忘了,所以今天决定,把他写成博客,以防忘记。。。先贴一段示例模板吧!需要的可以根据注释更改相应属性,代码比较好理解就不讲解了。(代码中,可以更改通知栏的背景颜色、ActionBar的背景颜色、一些UI组件的颜色、ActionBar的title样式(如字体颜色,大小))<res            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-12 08:23:01
                            
                                141阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一、概述本章节主要讲述使用android.hardware.Camera类来实现自定义相机的流程,虽然在api21中该类已被废弃,有了一套新的CameraDevice方法,但是为了向下兼容我们还是可以学习一下Camera1的使用。如有错误或优化之处,欢迎留言指导。二、具体实现首先介绍下如何判断是否支持照相机功能,代码如下:private boolean checkCamera(Context co            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-26 20:34:02
                            
                                216阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            View类是ViewGroup的父类,ViewGroup具有View的所有特性,ViewGroup主要用来充当View的容器,将其中的View作为自己孩子,并对其进行管理,当然孩子也可以是ViewGroup类型。View类一般用于绘图操作,重写它的onDraw方法,但它不可以包含其他组件,没有addView(View view)方法。ViewGroup是一个组件容器,它可以包含任何组件,但必须重写            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-08 09:26:18
                            
                                59阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            概述Android中有两个系统类是用来实现键盘的,分别是Keyboard和KeyboardView。Keyboard有个内部类Key,用于记录每个键的信息,如code、width、height等。而KeyBorad则持有一个List用于存储所有Key,并对外提供接口。KeyBoardView则是负责绘制所有Key,监听Touch事件,根据Touch处的坐标,计算出点击的是哪个Key,然后通过OnK            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-18 21:49:32
                            
                                256阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Drawable的分类
自定义Drawable
SVG矢量图
个人总结的知识点外,部分知识点选自《Android开发艺术探索》-第六章 Drawable
1、Drawable是什么?
一种可以在Canvas上进行绘制的抽象的概念
颜色、图片等都可以是一个Drawable
Drawable可以通过XML定义,或者通过代码创建
Android中Drawable是一个抽象类,每个具体的Drawable都            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-08-14 14:05:09
                            
                                63阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            而本文将通过实例实现自定义Camera的功效。具体功能如下:1.实现自定义Camera拍照;2.实现前后置摄像头的切换;3.实现Camera拍照后图片缩小显示以及正常预览;4.实现Camera拍照后图片保存;在具体实现代码之前,我们先来了解一下Android api对实现自定义Camera的介绍。根据api的介绍,对于Camera应用可以简单总结以下几个步骤。1.检查Camera是否存在,并在An            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-14 10:13:35
                            
                                175阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            自定义简易的ViewPager不多bb,首先来看效果图:很简单的效果,手指左右滑动时会将容器中的内容拖动,手指松开之后可以自动翻页,也就是一个简易版ViewPager的效果。在看代码之前要先说一个前提,就是这个自定义的ViewPager在宽度方向上不能设置为wrap_content。这是因为ViewPager中滑动的子元素宽度都必须设为match_parent,否则如果不充满MyViewPager            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-03 12:37:49
                            
                                203阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            在 Android 中自定义一个电池图标,一般是采用自定义 View,在 onDraw 中采用 Canvas 去绘制 Bitmap 或者各种几何图形。但是自定义 View 对初学者来说可能会有一点难度,那么有没有更简单的办法来实现自定义电池图标呢?实现电池图标 Drawable我们来分析下绘制一个电池图标我们需要做些什么?电池图标如图所示,电池图标可看成有三种状态,空的,满的,介于空和满的。那我们            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-26 11:07:01
                            
                                29阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Android中的自定义主题和样式   效果如下图: 通过xml文件来设置主题和样式:style文件自定义样式和主题的代码:   1. <?xml version="1.0" encoding="utf-8"?>  
2. <resources>  
3.     //设置父主题,取自TextAppearance  
4. <style name="tmacskyTh            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-31 15:18:03
                            
                                74阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            关键字:EditText自定义背景、shape、corners 通过 xml 定义 View 的背景 Drawable 资源还是挺常用的。 本篇博文记录几种常用的自定义 Drawable 方式。 1、圆角矩形A、普通圆角矩形<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="htt            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-03 17:30:56
                            
                                133阅读
                            
                                                                             
                 
                
                                
                    