![](https://img-blog.csdnimg.cn/2019090312540374.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Android开发相关
文章平均质量分 83
关于Android
计蒙不吃鱼
保持专注,别因后悔而停下脚步,微笑,自省,原谅,遗忘,然后继续向前。
展开
-
Android跳转至抖音APP个人界面(包括极速版,火山版)
最近想给自己准备上架的APP增加一个个人广告,设置点击跳转到博主的抖音个人界面。包括抖音,抖音极速版,抖音火山版。原创 2022-03-24 00:12:31 · 13896 阅读 · 9 评论 -
Android中ImageView中无法直接包裹图片
使用ImageView加载图片时出现了布局空间多余的问题(想动态适配图片的大小)原创 2022-03-22 22:39:29 · 3070 阅读 · 0 评论 -
Android SVG动画详细例子
在之前发了一篇关于SVG动画的文章,有小伙伴反应了一些问题,所以出一篇较为详细的动画例子文章,希望有所帮助。原创 2022-03-21 22:23:55 · 1965 阅读 · 1 评论 -
Android关于BottomNavigationView效果实现指南
BottomNavigationView中的颜色关键实现代码解析,以及一些效果实现。原创 2022-01-11 13:44:49 · 6091 阅读 · 9 评论 -
Android项目中多次操作SharedPreferences导致ANR场景的解决
系列文章目录Android项目中多次操作SharedPreferences导致ANR场景的解决文章目录系列文章目录项目背景:以定位来获取广告的方式为例:所遇到的挑战:解决问题的步骤:问题的解决最近朋友推了一篇字节的博客(以下文字以及图片来源于字节今日头条团队)。友盟平台相关SDK初体验:总结项目背景: 随着时代的进步,移动端广告的投放变得越来越多样化,为了接近市场,不少公司自己研发了SDK去收集用户的一些信息以及行为用于分析,根据分析结果使用自定义广告(自定义View)的方式继续向用户进行展示原创 2021-10-21 13:00:14 · 14997 阅读 · 3 评论 -
Android利用SVG实现动画效果
系列文章目录Android利用SVG实现动画效果老规矩,文中/文末会放置源码文章目录系列文章目录前言一、先看看Android中一个简单的SVG图二、pathdata中参数的定义(三角形是怎么绘制出来的)1.Demo绘制三角形的解读:三、动画效果的实现1.在bulid.gradle(Module:app)中增加对vectorDrawables的支持。2.以上步骤画出的SVG图:3.在res文件夹下新建animator文件夹放置动画文件4.在drawable文件夹下新建文件将svg与动画进行关联5.在I原创 2021-10-09 10:17:34 · 3061 阅读 · 4 评论 -
讲讲ViewGroup的setPersistentDrawingCache方法
系列文章目录讲讲ViewGroup的setPersistentDrawingCache方法文章目录系列文章目录前言一、看看Demo中给出的注释二、Android官方文档给出的介绍三、丢一个案例源码(此案例为官方Demo源码,根据个人修改了点效果)1.3d动画类2.Activity类3.布局文件4.Listview的载入动画5.效果图这是一篇采坑文章,灵感来源于博主某篇文章中与大佬的聊天前言记得在三年前,还在上一个学校,学生时代的时候,接过一个外包的Android单,里面有个需求是在一个Act原创 2021-09-24 15:01:24 · 1287 阅读 · 1 评论 -
Android中TextToSpeech的使用
系列文章目录Android中TextToSpeech的使用文章目录系列文章目录前言实现1.初始化语音。这是一个异步操作。初始化完成后调用oninitListener(第二个参数)。2.实现TextToSpeech.OnInitListener3.写一个朗读方法,在需要的时候触发(如:点击事件)4.记得利用Activity的生命周期中将其关闭源码前言在一年前,和朋友一起码了一个英语APP,仿照某APP实现了单词的功能,最开始就是借助的TextToSpeech,后面感觉声音不够好听,于是使用了第原创 2021-09-07 11:03:28 · 5825 阅读 · 0 评论 -
Android动态搜索的简单实现
系列文章目录Android动态搜索的简单实现文章最后有源码文章目录系列文章目录前言一、addTextChangedListener二、本文案例1.介绍一下SearchView的一些方法2.准备数据3.初始化以及填充数据4.在SearchView中用户输入字符时激发方法里写入简单逻辑三、源码前言提到Android的动态搜索,大多应该会想到EditText的文本改变的监听器(addTextChangedListener),本文会简单介绍一下,但是本文介绍的是SearchView+Listview原创 2021-08-31 17:48:10 · 3075 阅读 · 3 评论 -
Android自定义view之3D正方体
系列文章目录Android自定义view之3D正方体文章目录系列文章目录前言一、小提二、将传感器改成事件分发机制三、使用四、源码TouchSurfaceView.javaMainActivity.java总结前言在之前写了一篇关于3D效果的文章,借助传感器展示,有小伙伴问可不可以改成手势滑动操作(事件分发),所以出一篇文章传感器相关文章链接:Android 3D效果的实现一、小提相对于常见的自定义view而言,继承的GLSurfaceView只有两个构造函数。可以理解为没有提供获取自定原创 2021-08-20 20:13:24 · 2681 阅读 · 9 评论 -
Android 3D效果的实现
系列文章目录Android 3D效果的实现文章目录系列文章目录前言一、先看看聊天(需求)二、实现效果三.实现1.通过getSystemService获得SensorManager实例对象2.通过SensorManager实例对象获得想要的传感器对象:参数决定获取哪个传感器3.在获得焦点时注册传感器并让本类实现SensorEventListener接口4.必须重写的两个方法:onAccuracyChanged,onSensorChanged5.在失去焦点时注销传感器(为Activity提供调用)6.d原创 2021-08-19 21:03:24 · 3496 阅读 · 16 评论 -
OkHttp源码解析(小白必看,建议收藏)
系列文章目录在两年前还是专科的时候为了找工作看过Okhttp3的部分源码,记了点笔记,最近又到本科找工作阶段了,翻出来自己以前的笔记。整理出一篇文章,希望能够对各位产生帮助。(对初学者极其友好)计蒙创作不易,未入驻的其他平台搬运请按协议规则搬运。文章目录系列文章目录在看文章前需要知道的知识点1、Request 组成2、Response 组成3、HTTPS 中的 SSL 握手建立过程4、响应码5、socket 概念6.责任链模式(设计模式)一、OkHttp介绍1.这个库的作用:2.项目中使用这个库的原原创 2021-07-29 20:07:23 · 5434 阅读 · 12 评论 -
Android大厂校招经验+高频面试题(2021结合自身整理)
文章目录前言计蒙最近在干嘛面试结果自我情况分析此文章核心高频面试题如下(Android)总结前言好久不见,快半年没发文章了,也很久没看留言了,有很多粉丝在公众号内私信计蒙一些面试相关的问题,所以计蒙带着干货来了。(由于个人时间安排原因,尽可能做到一月一更)。计蒙最近在干嘛面试+面试+面试+英语+数学+数据结构面试结果春招面试大厂4家,最后险过1家(面到最后算法题恰好刷过),慎重考虑后,由于个人原因,准备下一波升学(校园生活真香警告)。自我情况分析计蒙大学母校是一所专科,计蒙的项目经验以及上手原创 2021-05-31 15:59:00 · 2266 阅读 · 11 评论 -
Android实现抖音无水印视频
前言好久没写文章了,最近微信8.0设置视频状态比较火,很多小伙伴问有没有什么办法去除抖音上的水印,所以写一篇文章。此文章为照顾新手,去除大部分框架,以及一些代码规范,以最原始的代码呈现文章目录前言核心一、准备工作二.实现思路以及核心代码1.最开始的思路2.另一种思路三.获取有水印的视频链接后,更改链接效果图总结核心抖音的无水印视频获取:将playwm改为play即可有水印的视频链接:https://aweme.snssdk.com/aweme/v1/playwm/…无水印的视频链接:ht原创 2021-01-28 14:47:13 · 3606 阅读 · 23 评论 -
Android翻转动画(卡片翻转效果)
文章目录前言需求一、先介绍三个插值器二、实现步骤1.效果图2.布局3.逻辑判断(是否隐藏)4.翻转动画5.bug出现6.bug解决三、源码MainActivity.javaactivity_main.xml四、总结前言最近好友问计蒙翻转动画,恰好在大二那年看Android Api Demo时记了笔记,由此写一篇文章。需求屏幕右滑事件触发卡片的翻转效果 ,为了方便,在例子中将右滑事件改成按钮点击事件老规矩,最后有源码一、先介绍三个插值器LinearInterpolator() 其变原创 2021-01-04 21:19:55 · 7047 阅读 · 20 评论 -
Android自定义view之围棋动画
Android自定义view之围棋动画好久不见,最近公众号内粉丝要求上新一篇有点难度的自定义view文章,它来了!!文章目录Android自定义view之围棋动画前言完成效果图一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言废话不多说直接开始提示:以下是本篇文章正文内容,下面案例可供参考完成效果图一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import原创 2020-12-30 15:59:52 · 11876 阅读 · 138 评论 -
Android自定义view之模仿登录界面文本输入框(华为云APP)
前言考核时间过了才发的哈老规矩最后有源码文章目录前言效果图一.分析二、步骤1.自定义一个控件2.写一个相似布局(代码在最后)3.将布局打气到view中4.小提示文字上浮下潜动画5.密码加密解密显示6.其他一些小知识点7.源码总结效果图一.分析1.组合多个控件完成此输入框静态效果2.hint值上浮下潜动画3.一些功能二、步骤1.自定义一个控件public class MyEditVIew extends RelativeLayout { public MyEditV原创 2020-12-23 16:32:09 · 7295 阅读 · 40 评论 -
Android WebView常见问题
前言记得第一次用webview的时候,就会个loadUrl,最近想着自己写个简单浏览器玩玩,发现了一些问题,于是写一篇文章,文章分两大类,一类为使用,另一类为简单问题解决。(老规矩最后有源码)废话不多说,下面开始文章目录前言前言一、webview的简单使用1.load网址2.设置一些属性3.写一个监听4.返回上一次浏览的页面二、遇到的一些问题1.ERR_CLEARTEXT_NOT_PERMITTED2.便页面支持缩放3.自适应屏幕三、源码总结前言于 Android P (9.0)限制了明文流原创 2020-12-23 15:32:11 · 3367 阅读 · 5 评论 -
Android自定义view之太极图
太极图周四课余时间比较多,正好前几天为了给小学弟解决问题,回顾了一些Android的知识,(上学还是不能把以前上班学到的东西丢掉)于是写一篇关于自定义view的文章。文章目录太极图最后完成的样子(可旋转)一、先画一个太极二、让太极旋转三、自定义属性(颜色,动画速度)四、源码总结最后完成的样子(可旋转)这篇文章主要内容为使用Canvas画简单图案,自定义属性,以及属性动画ObjectAnimator中的旋转动画提示:以下是本篇文章正文内容一、先画一个太极先介绍一下定义的东西:原创 2020-12-10 17:22:09 · 10416 阅读 · 45 评论 -
Android自定义view获取attr中自定义颜色的问题
好久不见,最近有点忙,好久没有发文章了,前天有个小学弟在写项目的过程中遇到了这个问题,由此写一篇文章。项目场景:Android自定义View在布局中设置颜色问题描述:以下为学弟的代码//attrs文件 <attr name="leftcolor" format="color"/> <attr name="rightcolor" format="color"/>//Java文件代码,获取颜色 int leftcolor=a原创 2020-12-06 19:39:40 · 4461 阅读 · 15 评论 -
Android构建自己的基础组件库
文章目录前言一、强调!二、本文基础组件库内容图片一览三、细节Log日志线程相关总结前言随着计蒙学习Android时间的增长,在接手了多个项目后,各种功能模块代码也写得比较多,在新旧项目的开发中,有很多功能模块是类似的,代码也可重复利用,工作那段时间没有时间整理,每次都得去另一个项目中CV,项目越来越多后,很难找到,只能从头开始敲,浪费了大量的时间。计蒙询问了多个Android开发大佬,给出的建议统一是构建自己的组件库,不要重复造“轮子”。基础组件库里面存放一些独立可用的工具类。一、强调!一原创 2020-10-13 16:42:21 · 2039 阅读 · 0 评论 -
Android对抗反编译
由于博主最近升学成功,早早的离职,所以有大把的时间弄一些好玩的东西------->反编译谷歌上的APK对我个人而言反编译一个APK可能会有的操作:1.修改APP名称,包名,图片2.想模仿实现某个功能3.得到数据库网上有很多代码混淆,加固,第三方打包的操作教程所以博主就写一篇对自己操作的进行对抗的文章用到的反编译工具是:Apktool,二次签名的工具是:signapk并掌握smali的文件格式以下为使用Apktool反编译出一些的文件下面开始进入正题(工具类在文章最后)1.在A原创 2020-08-21 18:15:59 · 2335 阅读 · 25 评论 -
Android常用的room增删改查语句(外部数据库)
最近博主把一个以前用原生数据库写的单词APP中数据库部分改成了room,在这个过程中踩了很多坑坑大概为两点使用room增删改查的一些语句导入外部数据库并对其表格内容进行增删改查在项目最后是全部重构成功了,但是在处理外部数据库时遇到的坑比较多,一时间没整理出来(整理了一个demo,但是没整理完),所以这篇文章解决room增删改查的一些常用语句。如果项目吃急,遇到外部数据库的一些问题,可通过公众号:计蒙不吃鱼 联系博主相信看这篇文章的人应该都有room的使用基础了,所以直接上菜(以下图表格为原创 2020-08-06 18:40:05 · 10958 阅读 · 14 评论 -
Android屏幕适配(使用ConstraintLayout)
前言:有一个还在上大学的小学弟问博主有没有啥屏幕适配简单的方法,把鸿洋大神的帖子发给他,他说看不懂,鉴于其学Android的时间很短,所以自己出一篇比较容易的简单方法的帖子(百分比适配)。博主准备的例子是csdn的启动页:效果图如下现在用AS新建一个项目,都会默认用到一个布局–ConstraintLayout,而博主主要给大家介绍一下下图红框内的部分的前两种(类似于ps的参考线)首先要会对位置进行设置–以前有写过一个博客——Android约束布局ConstraintLayout点击Add V原创 2020-07-31 19:23:44 · 5913 阅读 · 5 评论 -
Android背景颜色滑动渐变效果(上下滑动,左右滑动)
今天和朋友聊到这个功能,刚开始的想法是自定义view,如何进行滑动监听,经过一列操作完成效果后,发现了一个贼简单的实现效果,如下(老规矩后面有可运行代码)。效果图:1.在布局中放入一个ScrollView,然后确保里面的内容能够达到滑动的效果2.获取屏幕的高度 //获取屏幕高度 private float getScreenHeight(){ DisplayMetrics metric = new DisplayMetrics(); getW原创 2020-05-23 23:44:16 · 1889 阅读 · 0 评论 -
Android用Canvas画一个折线图,并加以简单封装
昨天晚上跟朋友聊天,聊到绘制折线,然后多画了几笔,画了个折线图。(老规矩后面有源码)先看一下效果图 view宽高设置为正方形 view宽高设置为mach_parent 先来绘制一个固定的折线图1.先画一个xy坐标轴。 Paint daxesPaint,axispointPaint,brokenLinePaint; //画布宽度原创 2020-05-21 06:32:13 · 4669 阅读 · 30 评论 -
Android用Canvas画一个真正能跑的跑马灯
以前自学,都是用帧动画来实现跑马灯,这几天常失眠,晚上学东西也学不进,所以用Canvas写个小Demo,这么无聊的应该只有我一个了吧,废话不多说,下面上内容。老规矩,最后有源码效果图如下:上代码前先介绍下手机坐标系,如下图然后是绘制草图,如下:大概思路为,开一个耗时线程使彩色背景旋转,来达到跑马灯的效果。核心:1.计算出View宽高,矩形宽高,从而算出矩形的坐标点。 int canvasWidth = canvas.getWidth(); //画布宽度 in原创 2020-05-15 09:46:53 · 3051 阅读 · 6 评论 -
Android网络小说阅读器的实现
博主也是一个书迷了,初中开始就喜欢看小说,从最开始按键机的文本阅读器…到现在的UC浏览器,在大学那段时间一直通过UC浏览器解码小说网站来阅读小说,也对此功能有很大的兴趣,最近为了考试离职,由于疫情原因多了点时间,所以也自己来模仿了一个Demo。(小说数据来源于网络!!!!!!!)做这个Demo大概用了一个星期多一点,修修补补倒是还能看。大概效果如下 图1 主页 图2 小说详情页 图3原创 2020-05-11 05:51:41 · 7722 阅读 · 17 评论 -
Android护眼模式(argb)
前提:护眼模式可以说是加一层某颜色且透明度小于1的view,现在网络上比较流行的护眼色博主比较喜欢以下两种。rgb值如下第一种:r=199, g=237, b=204;第一种:r=129, g=116, b=38;效果图如下第一步:动态添加一个透明的帧布局且设置此布局不可触不可定焦 protected void initEyeView() { ViewGroup ...原创 2020-04-29 22:47:48 · 3045 阅读 · 0 评论 -
Android动态关闭某Activity
**博主由于最近为了弄软著权,已经很久没更新了,恰巧最近学弟问了我这个问题,就写篇博客在Android中,栈是Activity存放的位置,所以此文章得在了解四种启动模式和栈的特点下阅读。废话不多说需求:在一个Activity中关闭某个Activity。解决方式:网上有许多的方法,而博主喜欢用结合广播的这种。将当前Activity命名为MainActivity;要被关闭的Activity...原创 2020-04-24 18:13:14 · 637 阅读 · 0 评论 -
Android判断view的显示和隐藏
博主在码一个小说APK的时候想提示用户正在加载,为了美观所以直接加了一个大的布局利用Android中view的**getVisibility()**方法的值来实现,介绍如下:这个方法返回的是一个int值,值可为0,4,80 ——————> VISIBLE 可见4 ——————> INVISIBLE 不可见但是占用布局空间8 ——————&g...原创 2020-02-12 01:49:56 · 2880 阅读 · 0 评论 -
CountDownTimer的简单使用
需求:加载某一个界面,在页面中待5秒后再关闭效果图如下:设置了一个点击事件,当文字显示为Skip activity时,点击跳转界面。代码及介绍如下图:核心功能代码如下Android自带的CountDownTimer这个工具类,也是通过Handler和子线程来实现的。//倒计时工具类CountDownTimer //CountDownTimer的构造方法有两个参数...原创 2019-11-08 10:55:20 · 3223 阅读 · 13 评论 -
Android中Textview设置图片的大小
最近博主在学自定义的原生广告,为了美化,自己加了些图标。但是发现图片大小无法控制,如下(红色标记框内)。大概修改如下。(设置图片大小)Drawable drawable=getResources().getDrawable(R.drawable.ad_flag);drawable.setBounds(0,0,40,20);40为设置图片的宽度,20为高度(调用方法将图片设置进去)te...原创 2019-11-01 14:47:00 · 5942 阅读 · 2 评论 -
Android约束布局ConstraintLayout
到深圳这边后比较忙,很久没有更新了,今天写的这篇博客是因为在面试的过程中问到了约束布局。所以简单提一下约束布局。这边文章会分为如下几点1.ConstraintLayout是什么2.为什么要用ConstraintLayout3.ConstraintLayout的简单使用1.ConstraintLayout是什么ConstraintLayout 是Google在2016年推出的一种布局,...原创 2019-10-19 13:40:45 · 1618 阅读 · 1 评论 -
ListView的setEmptyView方法
在Android开发中,用ListView显示数据时,如果数据为空,通常需要显示一个提示视图。有一种方法是使用setVisibility方法设置视图是隐藏还是显示,但是这种操作会比较繁琐,且让我们的代码看起来很乱。所以才有必要写一遍关于setEmptyView方法的文章。用法也非常简单:在xml中放置一个跟ListView同样位置,同样大小的提示视图(提示视图和listview组件要在一个Pa...原创 2019-08-27 16:12:45 · 2258 阅读 · 0 评论 -
关于Adapter.notifyDataSetChanged()无效
使用 Adapter.notifyDataSetChanged() 时,必须保证传进 Adapter 的数据源是同一个数据源,否则无效,大多使用时与数据库结合使用,但是记得增删改查不仅仅是要删掉数据库中的数据,而且也要删掉相应数据源中的数据例子如下:(在适配器中) 1. 删除数据库数据。2.删除数据源的数据,3.调用notifyDataSetChanged()方法...原创 2019-08-31 16:31:33 · 1539 阅读 · 0 评论 -
Android判断服务是否正在运行
方法中两个参数分别为1.className Service类的全路径类名 “包名+类名”,AS提供了快捷方式,如下2.context 上下文对象调用该方法,如果返回值为true则正在运行,如果为false则没有运行。方法代码如下: public static boolean isServiceRunning(String className, Context context) ...原创 2019-08-31 16:05:07 · 1887 阅读 · 0 评论 -
Android外部数据库的引用
情景:有现成的数据库,需要在项目中使用。1.将数据库拷贝到main文件夹下的assets文件夹中(assets文件夹需自己创建,且文件夹名称必须为assets,否则AS无法编译) 2.一般是在APP的引导界面将已有数据库拷贝到App的目录中去3.对数据库进行操作。将数据库拷贝到App中的方法如下 private void copydatabase(String dbname) ...原创 2019-09-03 00:39:38 · 757 阅读 · 0 评论 -
Android实现EditText的抖动效果
在写文章之前提一下samples,里面有很多Android初学者可以学的东西,本文的效果也是来自其中。其实samples在AS中的模拟器中就有展示的效果(API Demos)代码如下:java文件中代码调用:Animation shake = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.shake);mEt...原创 2019-09-04 11:32:25 · 2248 阅读 · 10 评论 -
Android前景与背景
知识点是来自于ImageView中XML的两个属性:src与backgroundsrc(前景):存放的是原图的大小,不会进行拉伸,图片是多大就显示多大background(背景): 能根据ImageView组件中设置的长宽进行拉伸 Demo例子如下: 效果图:...原创 2019-09-06 11:01:02 · 3285 阅读 · 0 评论