
Android开发学习
文章平均质量分 85
收录Android开发学习的各种知识,手把手教你学会Android App开发。
子林Android
You are more than what you have been now.
展开
-
Android开发如何正确的添加空格
在Android开发中,正确添加空格有三种方式:直接敲空格、使用Unicode字符、使用HTML字符实体。原创 2025-02-07 17:06:17 · 1137 阅读 · 0 评论 -
Android开发如何在String资源中添加空格
Android开发中使用 Unicode 字符表示空格,可以在Android string xml 资源中使用,解决直接输入空格不显示的问题。原创 2025-02-07 16:59:00 · 1047 阅读 · 0 评论 -
Android中创建ViewModel的几种方法
本文介绍了创建 ViewModel的几种常见方式。在Android中ViewModel 是一种用于管理与UI相关的数据的架构组件。它的生命周期与 Activity 或 Fragment 的生命周期相独立,能够有效地处理配置更改(如旋转屏幕)而不会丢失数据。原创 2025-01-03 17:48:32 · 1412 阅读 · 2 评论 -
一个标准的Builder模式写法示例
本文以一个例子介绍了 Builder 模式的标准写法。比如,有一个复杂的对象User,其中的属性也包括几个对象Address、Contact、Company、List。在构建这种对象时,使用Builder模式该如何实现呢?原创 2025-01-02 20:48:28 · 384 阅读 · 0 评论 -
一个Android下载网络图片显示并保存到系统相册的完整案例
在 Android开发 中,下载图片保存到本地是常见的需求,看似简单但其中包含了一些比较关键的知识点,比如网络请求、文件下载、动态权限申请、文件保存、移动到系统相册等本文我们介绍了一个下载网络图片显示并保存到系统相册的完整小案例,包含了一些关键实用的知识点:Retrofit 网络请求、RxJava 处理网络数据流、动态权限申请、文件保存IO操作、ContentResolver 移动文件到系统相册。原创 2024-08-08 15:37:45 · 1978 阅读 · 0 评论 -
Android中的沉浸式丝滑转场之共享元素转场动画
本文介绍了Android中共享元素转场动画的效果演示,尤其是比较常见的**列表页面共享元素转场动画**。2. 介绍了实现方法:通过Android中提供了 `ActivityOptionsCompat.makeSceneTransitionAnimation` 方法来实现场景转场动画3. 提供了两个完整的代码示例演示。原创 2024-08-06 21:02:51 · 1984 阅读 · 0 评论 -
Android限制参数传递之StringDef注解的使用
在参数传递时,如果你想限制传入的参数只能是特定的几个值,该怎么做呢?除了把参数类型定义为枚举值,还可以使用注解来限制参数只能是你规定的几个值。以下3个注解就是起到了这样的作用: @StringDef 限制参数只能是规定的几个String类型的值 @IntDef 限制参数只能是规定的几个Int类型的值 @LongDef 限制参数只能是规定的几个Long类型的值原创 2024-06-03 15:21:46 · 1195 阅读 · 1 评论 -
Android反编译工具
本文介绍了Android反编译的基本过程,使用的工具,重新打包,重新签名。如何通过一个apk包得到它的源码,其中涉及到几个重要的工具软件,比如dex2jar、jd-gui、apktool,不仅介绍了它们的使用示例,还提供了下载地址。原创 2024-05-21 11:20:27 · 981 阅读 · 0 评论 -
Android中使用Palette让你的页面UI优雅起来
android中Palette的介绍,用法,举例,用Palette做一个优雅的卡片+文字列表。原创 2024-05-15 16:24:37 · 2370 阅读 · 0 评论 -
Android解放双手的利器之ViewBinding
ViewBinding的介绍,原理,优点,基本用法,在Activity、Fragment、ViewHolder中使用ViewHolder。与dataBinding的对比。原创 2024-05-10 19:25:40 · 7067 阅读 · 2 评论 -
Android性能优化利器:使用ViewStub优化你的布局
ViewStub的概念,作用,使用方法。android中动态显示隐藏View的两种方式比较。ViewStub的使用举例,注意事项。原创 2024-05-08 14:36:56 · 1787 阅读 · 0 评论 -
如何下载AndroidStudio旧版本
如何下载AndroidStudio旧版本,历史版本,Android官网下载Androidstudio所有版本原创 2024-04-28 00:55:55 · 9870 阅读 · 2 评论 -
Android四大组件之Service简介
Service 意为:服务,是一种运行时用户不可见的活动机制,是Android四大组件之一。本文介绍了service的基本概念,如何创建service,启动Service的两种方式。原创 2024-03-18 23:52:25 · 492 阅读 · 0 评论 -
【Android开发中如何设置屏幕常亮】
在一些场景比如**阅读应用**或**导航应用**上,屏幕常亮是常见的需求。要在Android设备上设置屏幕常亮,我们可以在Activity中通过以下代码实现屏幕常亮。原创 2024-03-04 19:12:54 · 1392 阅读 · 0 评论 -
Android如何实现复制到剪贴板
在 Android 开发中,可以使用 `ClipboardManager` 来复制文本到剪贴板。本文是一个简单的示例代码,演示如何将文本复制到剪贴板。原创 2024-03-04 16:21:06 · 3233 阅读 · 0 评论 -
【一个上下拉且松手回弹的自定义ScrollView】
普通的scrollView下拉到顶部时就不动了,而如qq设置界面中的布局,下拉到顶端时还能下拉一段距离。本文介绍一个自定义scrollView就可以实现这样的效果。。原创 2024-02-29 19:23:23 · 488 阅读 · 0 评论 -
Androidstudio常用快捷键
本文总结了android sudio中常用的快捷键原创 2024-02-29 15:47:10 · 1322 阅读 · 0 评论 -
Android中AGP与Gradle、AS、JDK的版本关系
在Android开发中由于AGP与gradle、JDK、AS等版本不匹配导致的编译失败问题屡见不鲜,尤其是对于新手而言更是叫苦不迭。新手经常遇到拿到别人的工程代码打开后却编译不过,各种飘红,让人抓狂,最终步上从入门到放弃的心酸之路。除了本身代码的原因,有很大概率是因为配置环境不合适,本文就列出了该问题所涉及的几个重要概念及其版本对应关系。对照排查,一定能大有裨益,令人醍醐灌顶,茅塞顿开!总之,希望本文能帮助你解决编译工程配置版本的问题!原创 2024-02-05 20:18:43 · 11629 阅读 · 4 评论 -
Android屏幕旋转后的变更--ConfigChange
在android开发中,有一个容易被忽视但其实很重要的问题:屏幕旋转后的页面重建。本文将介绍下当屏幕旋转后,页面生命周期的变化以及如何防止页面重建带来的问题。原创 2022-02-07 21:19:42 · 4942 阅读 · 0 评论 -
Fragment+ViewPager+BottomNavigationView实现页面导航
上篇文章我们学习了[Fragment+ViewPager+BottomTab实现页面导航](https://blog.youkuaiyun.com/fxjzzyo/article/details/122702033),实现了左右滑动切换页面。但我们底部导航按钮的实现还比较原始,使用了大量的控件拼凑而成,相对麻烦。本文将对上节案例做进一步的优化,使用BottomNavigationView这个控件快捷的实现导航按钮。原创 2022-01-27 16:25:57 · 813 阅读 · 0 评论 -
Fragment的介绍
Fragment介绍Fragment直观印象Fragment : 片段、碎片。是一部分内容构成的片段,体现在屏幕上是一块内容区域。上图是常见的页面结构:底部四个导航菜单,上面整块区域是对应的内容页面。点击每个菜单,上面的内容页面切换到对应的内容页。而每个内容页,通常就是一个Fragment。在四个内容页切换过程中,整体的Activity是不变的。为什么要有Fragment?在Fragment之前,我们通常把一个Activity作为一个页面。但随着页面元素的增加以及场景的复杂,单个页面已经不能满足原创 2021-08-15 00:37:52 · 861 阅读 · 0 评论 -
彻底解决gradle与gradle plugin匹配关系以及gradle下载缓慢的问题
我们刚接触安卓开发,在环境搭建阶段,安装Android studio的时候或者新建一个项目的时候,往往会卡到一个地方一直等待,一直等待。。。直到最后报红线,怎么搞都不行。最后崩溃,放弃了,毁灭吧,搞不了了。其实,就是一个gradle下载缓慢的小问题把好多新人挡在了Android开发的大门之外。唉唉,朋友,别放弃,看这里,都是小问题。这里给大家分享一下个人的解决方案。先说原因:之所以下载缓慢,是因为gradle服务器在国外,国内网络访问自然慢啊,Android Studio已经尽力了。再说方法:我原创 2021-02-27 21:29:23 · 38534 阅读 · 17 评论 -
Activity启动模式singleTask的理解
1. Activity启动模式singleTask的理解2. Task与Activity栈3. singleTask设置方式4. singleTask的意义(作用)4.1. 举例说明4.2. 例子14.3. 例子24.4. 小结5. taskAffinity属性5.1. 配置方式5.2. 意义(作用)5.3. 举例5.4. 回退顺序5.5. 总结1. Activity启动模式singleTask的理解2. Task与Activity栈Task是一些Acti..原创 2020-10-26 16:51:01 · 21931 阅读 · 6 评论 -
在Android中使用Kotlin
目录环境要求配置 KotlinJava文件转换为Kotlin一个JavaBean类的Kotlin版本data关键字for循环字符串内插Kotlin Android 扩展视图绑定使用 lambda 表达式Kotlin表达三元运算符使用Kotlin扩展函数排序使用Kotlin标准库扩展替换 for 循环环境要求使用 Android Studio 3.0 或更高版本已安装Kotlin插件配置 Kotlin在 Android Studio 中,选择 Tools > Kotlin > Con原创 2020-06-07 14:28:58 · 1480 阅读 · 0 评论 -
android 手机屏幕横屏竖屏切换
第一篇博客哦~本例子是实现简单的屏幕横竖切换的。主要知识点:getRequestedOrientation() == ActivityInfo.SCREEN_ORIENTATION_PORTRAIT//判断横屏getRequestedOrientation() == ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE//判断竖屏s原创 2015-08-17 21:33:37 · 1259 阅读 · 0 评论 -
android 组件radioGroup实例
RadioGroup组件是由一组RadioButton构成,一组中只能选中一项。本例子很简单,通过获取勾选的项进行相应的逻辑判断。布局文件:radiogroup_layout.xml android:layout_width="match_parent" android:layout_height="match_parent" android:原创 2015-08-20 19:07:55 · 811 阅读 · 0 评论 -
android 组件DatePicker实例
本例子通过一个按钮点击弹出一个DatePickerDialog,用户可以改变日期,然后点击确定后将新日期以字符串形式设置到按钮上。主要是用了DatePickerDialog这个知识点。new DatePickerDialog(this, DatePickerDialog.THEME_DEVICE_DEFAULT_LIGHT, new OnDateSetListener() {@原创 2015-08-21 16:00:40 · 568 阅读 · 0 评论 -
微信分享闪退问题分析及解决
今天看了慕课网的微信朋友圈分享课程,自己动手做时却发现点击按钮总出现闪退,分享结果也返回true了,可就是闪退。看了评论发现好多同学都在问这个问题。大致的原因都在说签名不一致的问题。多方百度,我最后终于发现了真相!终于将自己的一个demo成功分享了。今天虽然很累,但趁着灵感还在,赶快记下吧!也希望对各位看官有所帮助。首先,做微信分享要在微信开发者平台注册账号,申请自己的app_id。 这里按照原创 2016-05-14 21:11:29 · 11008 阅读 · 1 评论 -
android 组件Notification实例
本例是对Notification的练习,通过点击按钮弹出Notification系统通知。主要知识点://获取系统通知管理器private NotificationManager notificationManager;notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATIO原创 2015-08-23 17:18:12 · 519 阅读 · 0 评论 -
android 组件CheckBox实例
本例子是对checkbox组件的小练习。用4个checkbox供选择今天吃什么食物。通过button点击确定后弹出提示对话框,提示选中的食物。 主要应用了isChecked()方法。如果被勾选,则加入字符串中。布局文件:checkbox_layout.xml android:layout_width="match_parent" android:layou原创 2015-08-21 15:48:52 · 607 阅读 · 0 评论 -
Android studio3.0上运行opencv3.2.0自带人脸识别实例Demo
开发环境win10android studio 3.0opencv3.2.0下载地址Android studio下载地址 opencv各版本下载地址android studio 的安装过程网上有很多,不再赘述。原创 2018-09-10 18:05:15 · 5485 阅读 · 3 评论 -
Android本地存储路径
1. 手机应用内置存储路径getFilesDir().getAbsolutePath()getFilesDir().getPath()getCacheDir().getAbsolutePath()getCacheDir().getPath()实验代码:String savePath5 = getFilesDir().getAbsolutePath();String savePat...原创 2018-12-04 18:04:25 · 2815 阅读 · 0 评论 -
Android使用FFmpegMediaMetadataRetriever获取视频缩略图
文章目录1. 使用MediaMetadataRetriever获取视频元数据2. 使用FFmpegMediaMetadataRetriever获取视频元数据(缩略图)2.1 集成方法2.1.1 使用gradle配置依赖。2.1.2 使用aar包2.2 代码里使用FFmpegMediaMetadataRetriever3. 完整代码4. 运行效果1. 使用MediaMetadataRetrieve...原创 2018-12-13 15:59:27 · 9612 阅读 · 6 评论 -
Android6.0动态权限申请
直接上代码Android6.0以及以上获取权限要动态申请,只在manifest文件里写`是不够的。还要在代码里写: //获取拍照的权限 private void requestCameraPermission() {// 判断手机版本,如果低于6.0 则不用申请权限,直接拍照 if (Build.VERSION.SDK_INT >= Bui...原创 2018-12-13 18:37:15 · 560 阅读 · 0 评论 -
Android调用OpenCV配置方法
文章目录1. 环境2. 准备工作3. 开始构建示例项目4. 集成opencv库4.1 导入opencv库4.2 配置CMakeLists.txt4.3 代码声明及实现4.3 运行效果5. 可能遇到的其他错误及解决方法5.1 包冲突1. 环境Windows10Android studio 3.0Android NDK : android-ndk-r16bOpencv3.2.02. 准备工...原创 2019-01-25 18:00:59 · 3052 阅读 · 1 评论 -
android 组件TimePicker实例
本例子和上一篇datePicker相似。通过一个按钮点击,弹出一个TimePickerDialog。用户调整好新时间,确定后,会以字符串形式把新时间设置到Button上。主要知识点是 new TimePickerDialog().new TimePickerDialog(this, new OnTimeSetListener() {@Overridepublic void onTi原创 2015-08-21 16:16:42 · 428 阅读 · 0 评论 -
android 组件Spinner组件实例
本例子是对组件Spinner的一个练习。Spinner组件,类似下拉列表框。布局文件:spinner_layout.xml android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" >原创 2015-08-21 18:18:53 · 560 阅读 · 0 评论 -
android 组件AutoCompleteTextView和MultiAutoCompleteTextView实例
AutoCompleteTextView--自动补全编辑框。MultiAutoCompleteTextView多项自动补全编辑框。(可以根据特定的分隔符,如逗号“,”来多项提示内容。)根据输入的前若干字母编辑框会自动下拉展示待选的字符串,类似百度搜索的历史记录栏。 android:completionThreshold="1"设置这个属性可以定义从输入的第几个字母开始提示。此处是1原创 2015-08-21 18:27:31 · 406 阅读 · 0 评论 -
Android ButterKnife学习总结
1. 什么是ButterKnife?ButterKnife是一个专注于Android系统View、Resource、Action的注入框架,可以减少大量的findViewById以及setOnClickListener代码,并且可以利用一个叫做Zelezny的插件,可视化一键生成。 妈妈再也不用担心我敲代码敲到手抽筋儿了~2. 在android studio中配置ButterKnife1) 在p原创 2017-11-03 23:05:08 · 642 阅读 · 0 评论 -
高手速成android开源项目【导航篇】
高手速成android开源项目【导航篇】 http://blog.youkuaiyun.com/zhixiang2010/article/details/18033357(转)Android开发又将带来新一轮热潮,很多开发者都投入到这个浪潮中去了,创造了许许多多相当优秀的应用。其中也有许许多多的开发者提供了应用开源项目,贡献出他们的智慧和创造力。学习开源代码是掌握技术的一个最佳方式.转载 2017-07-02 19:24:08 · 352 阅读 · 0 评论