自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 TextView的TextColor中使用selector的问题

TextView的textColor使用selector的问题记录

2023-01-31 17:04:36 879

原创 Failed to resolve attribute at index 6: TypedValue{t=0x2/d=0x7f0400cd a=7 r=0x7f06006e}

今天在开发时,遇到一个程序的Bug,记录一下在Dialog中展示一个布局,布局中包含了TextView报了下面的错误,最开始还以为是颜色设置的问题,反复核对了一下颜色设置并没有问题。后来发现是主题设置有问题:Dialog设置的主题是:Theme.AppCompat.Light.Dialog.AlertActivity设置的主题是:Theme.AppCompat.Light.NoActionBar将其统一起来,并不在报下面的错误了Caused by: java.lang.UnsupportedOp

2021-03-26 17:25:28 2887

原创 Android中图片的镂空效果(不规则图形的镂空)

一、说在前面的话我们在做新手引导时,经常会遇到凸显某一块功能时需求,类似于下图:

2020-12-01 17:05:44 1997 1

原创 PopupWindow的事件透传(用于引导时的事件透传)

一、说在前面的话引导在我们日常的开发过程中是必不可少的,特别是在用户首次打开时,需要一些新手教程的操作就更为常见。例如下图:一般我们会在原有的布局中在覆盖一层布局,以此来做引导的镂空效果。但是引导只有用户首次打开的时候才会展示,如果在原有的布局中新增一层布局,这样不仅会破坏原有的业务逻辑也会导致布局层级的新增。估计这时会有同学站起来说,我们可以使用ViewStub,以此减少不必要的布局加载。确实是这样,不过这不是本篇文章的重点,陈独秀同志请坐下。让我们继续,就如上图中,在不修改原有代码的基础上并对用户

2020-12-01 16:15:23 2619

原创 微信SDK中含有的支付功能怎么去掉?

一、说在前面的话这两天遇到一个特别让我DT的问题,估计大家通过标题就能知道问题了。没错,就是在应用中集成了微信SDK后,它自动支持了微信分享、登录、收藏、支付等功能。这一点没啥,TM的关键点就是在上传到应用宝时,他们既然提示了未通过,问题如下:我集成微信SDK,主要是想使用登录和分享功能,支付功能压根不是我想集成的,但是这两个功能也没有单独的SDK,这就很让人DT了,关键这两个平台都是腾讯的...

2020-05-06 15:32:05 2791 6

原创 如何在Libgdx中使用ValueAnimator

最近在做Libgdx项目开发时,遇到一个问题,那就是如果在Libgdx中使用ValueAnimator。平时我们在Android项目中,做动画时会经常会使用ValueAnimator.ofInt(0, 100)或者ValueAnimator.ofFloat设置一个duration,就可以在指定的时间内完成从Start到End的过程转化了。样例: ValueAnimator alphaActio...

2020-03-22 00:46:11 1241

原创 LibGDX-多分辨率屏幕适配的详解(一步到位)

一、说在前面的话最近在做项目时,使用了久违多年的技术LibGDX。想想当前对做游戏的憧憬,感觉如果自己能做一款游戏那就酷毙了????。但是游戏对于美工硬性要求特别高,所以就只能通过反编译swf小游戏移植到Android上小打小闹的玩玩。最近公司想通过LibGDX Spine技术实现一些炫酷的动效交互,所以又让我们又了重逢的机会????。在Android上开发界面时,让我们不得不提到的问题:多分辨率适配的问...

2020-03-08 18:36:12 1663

原创 libgdx, couldn't load shared library 'gdx' for target: Linux, 32-bit的终极解决方案

说在前面的话今天在下载spine-libgdx的spine-libgdx-tests运行时,报了一个“libgdx, couldn’t load shared library ‘gdx’ for target: Linux, 32-bit”错误。这个是我引入libgdx和spine-libgdx的方式: implementation 'com.badlogicgames.gdx:gdx...

2020-02-21 22:34:47 1064

原创 针对drawableStart(Top、End、Bottom)边距的设置-Android布局技巧

作为Android程序猿,在开发布局的过程中,我们的宗旨是能用一个View完成的效果,绝不会用两个View或者嵌套View来完成。至于它的好处,就不言而喻了吧。不懂的自行到网上看,或者大牛请直接跳过。今天就让我们针对下图中一个小的布局点来讲述drawableStart的布局使用。<img src=“https://img-blog.csdnimg.cn/20190812211415352....

2019-08-13 11:52:58 5264

原创 RecyclerView动态插入复杂多列展示

在做开发列表时,会经常遇到混排的情况。比如说跨列或者瀑布流的方式等

2019-06-18 17:12:06 2917

原创 Android功能引导镂空效果

在开发过程中,我们经常会使用到新功能引导效果,引导的形式是多种多样的,例如:呼吸动效、阻断式镂空引导等等。那我们今天就讲述如何实现镂空效果吧

2018-12-06 20:55:38 2167 1

原创 android中xml tools属性详解—从入门到Easy

一、说在前面的话在使用Android Studio创建xml布局时,通常在自动生成代码时,会自动新增一个tools命名空间: xmlns:tools=&amp;quot;http://schemas.android.com/tools,对于不了解tools怎么使用的同学,可能就直接忽略了或者直接就删除了。那今天就来讲讲它的作用,它有何种魅力能让Android Studio内置到xml模板中,那就让我们开始吧二、...

2018-12-04 18:06:48 345

原创 Android ConstraintLayout性能分析

这篇文件是讲述ConstraintLayout性能的分析,如果对于使用ConstraintLayout不是很了解的情况下,请查看Android ConstraintLayout完全解析和性能分析(章节一)或 Android ConstraintLayout完全解析和性能分析(章节二)。如果对ConstraintLayout使用有一定的掌握,只是想对ConstraintLayout性能进行了解,那我...

2018-11-29 20:49:09 1348 1

原创 Android ConstraintLayout属性细化

五、ConstraintLayout属性讲解先简单了解一下我们使用ConstraintLayout要用到的一些基本方位属性,如下表所示:属性描述app:layout_constraintLeft_toLeftOf把A的left side放在B的left side(左边对齐)app:layout_constraintLeft_toRightOf把A的left sid...

2018-11-28 14:19:52 1267

原创 Android ConstraintLayout使用详解—手把手教你

说在前面的话

2018-11-28 14:18:29 1527

原创 Android ImageView中scaleType="centerCrop"实现左对齐效果

if (target instanceof ImageViewTarget) { final AppCompatImageView imageView = (AppCompatImageView) ((ImageViewTarget) target).getView(); imageView.setScaleType(ImageV...

2018-11-26 21:19:52 2640

原创 Lottie如何绑定事件?

前言大家可能

2018-11-19 15:58:52 3016 1

原创 开发Android Camera—使用Kotlin语言,完成第一个自定义相机

对于首次使用Kotlin语言开发,在网上苦于寻找不到Kotlin语言编写的相机代码,故写下这篇博客。好了,咱们进入主题

2018-11-19 14:44:11 4460

原创 An operation is not implemented: not implemented被坑之路[Kotlin]

吐槽一下,程序猿的辛酸史。今天在开发新项目时,首次使用了Kotlin语言,对于之前只在纸上谈兵,未在项目中使用过的码农,很是一脸懵逼。但是迫于公司的要求,只能硬头皮冲吧。在编写下面代码时:holder?.addCallback(object :SurfaceHolder.Callback{ override fun surfaceChanged(holder: Sur...

2018-11-16 21:36:35 3178 1

原创 kotlin中使用匿名内部类

1.常规的方式实现匿名内部类 mCamera?.autoFocus(object : Camera.AutoFocusCallback { override fun onAutoFocus(success: Boolean, camera: Camera?) { TODO(&amp;amp;amp;amp;amp;amp;quot;not implemented&amp;amp;amp;amp;amp;amp;quot;) //To

2018-11-16 17:15:25 3299 1

原创 Lottie的使用和源码详解

一、说在前面的话在Android开发中,Coder要兼顾各个模块的建设维护,当然也少不了动画的制作,为了让界面使用更为友善,一般会由UI狮的一番设计后交由开发者在App重现出来。开发着在开发动画的同时会带来很多的问题,比如:图像适配性、大小占用空间等。早在Android5.0的时候,Google已经提供对vector矢量图的支持,并且这种矢量图还可以“动起来”。解决问题的同时,又带来了新坑...

2018-11-14 19:51:49 10023 4

原创 深入了解多线程的原理

说在前面的话使用多线程的目的在多个CPU核心下,多线程的好处是显而易见的,不然多个CPU核心只跑一个线程其他的核心就都浪费了即便不考虑多核心,在单核下,多线程也是有意义的,因为在一些操作,比如IO操作阻塞的时候,是不需要CPU参与的,这时候CPU就可以另开一个线程去做别的事情,等待IO操作完成再回到之前的线程继续执行即可为什么要使用线程池,能为我们带来什么好处?降低...

2018-05-25 15:35:48 18202

原创 彻底理解Java中堆和栈的区别

1、概述在Java中,内存分为两部分,一种是堆内存,另一种就是栈内存。2、Java中变量在内存中的分配1). 类变量(static修饰的变量):在程序加载时系统就为它在堆中开辟了内存,堆中的内存地址存放于栈以便高速访问。静态变量的生命周期—一直持续到整个“系统”关闭 2). 实例变量:当你使用java关键字new的时候,系统在堆中开辟并不一定是连续的空间分配给变量(比如说类实例),然后根据零散的

2018-05-08 14:30:13 9533 1

原创 PopupWindow中showAtLocation在不同版本展示的差异

说在前面话PopupWindow在我们Android开发中较为常用的弹框形式,但是随着Android版本的迭代,也对PopupWindow做了不同程度的改造,如果我们不对其了解,那么在使用过程可能会遇到意想不到Surprise。下面我根据个人的亲身亲历讲述PopupWindow的使用。进入主题在我拿到设计师的设计时,脑袋中立马就浮现了PopupWindow的使用,因为这是一个引导弹框也就意味着它只会

2018-04-28 10:42:19 1418

原创 WebP使用指南

一、什么是WebP?webp(weppy,项目主页)是谷歌2010发布的一种支持有损压缩和无损压缩的图片文件格式,派生自图像编码格式 VP8。根据 Google 的测试,无损压缩后的 WebP 比 PNG 文件少了 26% 的文件大小;有损压缩模式相等SSIM质量下,WebP比JPEG减少25-34%的文件大小。在 Google 的明星产品如 Youtube、Gmail、Google Play 中都

2017-11-25 15:19:32 1091

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除