![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记管理
马占柱
Android行业多年软件开发经验,从事多年移动App开发,涉及医疗健康、商城、聊天、代驾打车、特种设备防护、公安边检查验领域;目前从事汽车车载系统开发工作。
展开
-
谷歌原生GPS定位处理【locationProvider】
谷歌原生GPS定位处理【locationProvider】原创 2022-12-28 10:26:54 · 552 阅读 · 0 评论 -
Fragment 中的常用方法 isAdded()、isVisible()、isHidden()、isRemoving()、isResumed()、 isInLayout()
Fragment 中的常用方法 isAdded()、isVisible()、isHidden()、isRemoving()、isResumed()、 isInLayout() 等详解原创 2022-06-23 16:21:42 · 1004 阅读 · 0 评论 -
《Activity显示界面历险记》
前言在Activity显示View的过程中,有一些重要的角色总让人理不清,比如PhoneWindow、DecorView、ViewRootImpl。也常常有面试题会问到,他们四者之间的关系?创建的时机?View第一次绘制的时机?等问题。那么今天,就和大家一起从Activity启动开始 看看 到展示出View整个过程中,到底会经过哪些步骤,这之间各角色的关系又如何。1.动画展示为了方便大家理解,先通过动画的形式给大家展示这几位的关系:2源码解析从小爱诞生说起在Acti.转载 2021-03-08 15:26:33 · 369 阅读 · 0 评论 -
两个经纬度点之间计算距离【经纬度距离计算】
public class Distance { private static final double EARTH_RADIUS = 6378137.0; public static void main(String[] args) { double lo1 = 108.90, la1 = 34.1;// 第一个经纬度 double lo2 = 115.4648060, la2 = 38.8738910;// 第二个经纬度.原创 2021-02-02 11:03:51 · 896 阅读 · 0 评论 -
协程VS进程VS线程
什么是进程和线程?进程是应用程序的启动实例,进程拥有代码和打开的文件资源、数据资源、独立的内存空间。线程从属于进程,是程序的实际执行者,一个进程至少包含一个主线程,也可以有更多的子线程,线程拥有自己的栈空间。操作系统中的进程和线程对操作系统而言,线程是最小的执行单元,进程是最小的资源管理单元。无论是进程还是线程,都是由操作系统所管理的。线程的状态线程具有五种状态:初始化...原创 2020-04-14 15:15:42 · 280 阅读 · 0 评论 -
【安卓常用】文件工具类FileUtils【Uri】【安卓常用文件储存】
工作中用到的一些工具类,做一个笔记,以便日后回顾~/** * 文件工具类 * * @author mazhanzhu 2019年8月19日17:04:11 */public class FileUtils { public static final int SIZETYPE_B = 1;//获取文件大小单位为B的double值 public static ...原创 2018-11-26 14:50:11 · 543 阅读 · 0 评论 -
Android中跳转到系统一些设置界面setting的方法
1.跳转到系统的辅助功能界面Intent intent = new Intent(Settings.ACTION_ACCESSIBILITY_SETTINGS); startActivity(intent);2. 跳转到添加帐户界面Intent intent = new Intent(Settings.ACTION_ADD_ACCOUNT); startActivity(i...原创 2018-11-13 13:45:49 · 4826 阅读 · 3 评论 -
Word文档忘记设置的密码怎么办?
有的时候,为了保护Word文档不被编辑以及被其他人乱修改,我们会对Word文档进行一个密码设置,来保护Word文档。(重要说明:注意最后的注意事项,演示操作是在文档可以打开的情况下进行,并且2003版本可以使用方法二解决,其他版本的无法解决这个问题。)工具/原料 Word文档 office办公软件 方法/步骤 1 这个时候,可以有三种方式来取消掉已经设置的Wo...原创 2018-11-06 11:06:54 · 26828 阅读 · 1 评论 -
Kotlin 浅谈
简介Kotlin是一门静态语言,支持多种平台,包括移动端、服务端以及浏览器端,此外,Kotlin还是一门融合了面向对象与函数式编程的语言,支持泛型、安全的空判断,并且Kotlin与Java可以做到完全的交互。Kotlin特点代码量少且代码末尾没有分号。 被调用的方法需放到上边。 Kotlin是空安全的:在编译时期就处理了各种null的情况,避免了执行时异常。 它可扩展函数:我们也...转载 2018-12-04 14:47:24 · 627 阅读 · 0 评论 -
String类的compareTo()和compareToIgnoreCase()
compareTo()的返回值是int,它是先比较对应字符的大小(ASCII码顺序)1、如果字符串相等返回值02、如果第一个字符和参数的第一个字符不等,结束比较,返回他们之间的差值(ascii码值)(负值代表:前字符串的值小于后字符串,正值代表:前字符串大于后字符串)3、如果第一个字符和参数的第一个字符相等,则以第二个字符和参数的第二个字符做比较,以此类推,直至比较的字符或被比较的字符...原创 2018-11-30 15:11:40 · 199 阅读 · 0 评论 -
Java中的String,StringBuilder,StringBuffer三者的区别
这三个类之间的区别主要是在两个方面,即运行速度和线程安全这两方面。首先说运行速度,或者说是执行速度,在这方面运行速度快慢为:StringBuilder > StringBuffer > String String最慢的原因: String为字符串常量,而StringBuilder和StringBuffer均为字符串变量,即String对象一旦创建之后该对象是不可更改的,但...原创 2018-12-10 17:09:34 · 123 阅读 · 0 评论 -
Base64工具类(文件、base64字符串、Bitmap相互转换)
马上吃饭了,懒得写太多了,先对付看吧/** * Created by Mazhanzhu on 2019/5/9 * Base64工具类 */public class Base64Util { public static void gcBitmap(Bitmap bitmap) { if (bitmap != null && !bitma...原创 2019-05-09 11:13:34 · 1867 阅读 · 0 评论 -
RSA工具类,可以直接使用的有不足之处还请见谅
这是RSA工具类,可以使用/** * RSA加密工具类 * <p> * Create by Mazhanzhu on 2019/8/10 */public class RSAUtils { private static final String TAG = "RSAUtils"; public static final String KEY_ALGOR...原创 2019-08-13 15:11:02 · 525 阅读 · 0 评论 -
Android App的设计架构:MVC,MVP,MVVM与架构经验谈
最近发现一个挺不错的有关讲解MVC,MVP,MVVM的文章,在此做一个记录原博主文章转载 2019-08-14 16:16:25 · 128 阅读 · 0 评论 -
Android开发初级中级高级怎么划分
移动研发在最近两年可以说越来越趋于稳定,因为越来越多人开始学习Android开发,造成市场参差不齐。正所谓入门容易成长很难,对未来比较迷茫,不知道自己技能该怎么提升,并且对于初级中级高级需要怎么进行成才,很多人都比较迷惑。 为了方便大家成才,我把初级、中级、高级和资深四个常见的岗位需要掌握的一些知识进行如下整理。初级初级研发工程师的定义是掌握基础的Android知识,能够独立完成一个功能,...转载 2019-09-04 16:02:19 · 407 阅读 · 0 评论 -
Android Studio修改默认Activity继承AppCompatActivity
在Android Studio中新建Activity默认继承AppCompatActivity,感觉这点十分不爽,找了很久,终于发现在Android Studio安装目录下有个模板文件,修改其中的参数即可。这是那个文件名:common_globals.xml.ftl路径如下:android-studio-2.0\plugins\android\lib\templates\activ...转载 2018-10-25 14:11:29 · 440 阅读 · 0 评论 -
项目常用bulid.gradle配置
这是自己在项目中用到的bulid.gradle设置,有需要的可以参考一下apply plugin: 'com.android.application'android { compileSdkVersion rootProject.ext.android.compileSdkVersion buildToolsVersion rootProject.ext.androi...原创 2018-10-25 10:11:05 · 295 阅读 · 0 评论 -
高德定位笔记
<application android:icon="@drawable/icon" android:label="@string/app_name" > <meta-data android:name="com.amap.api.v2.apikey" android:value...原创 2018-02-08 17:59:41 · 220 阅读 · 2 评论 -
排序算法总结
排序算法平均时间复杂度冒泡排序O(n2)选择排序O(n2)插入排序O(n2)希尔排序O(n1.5)快速排序O(N*logN)归并排序O(N*logN)堆排序O(N*logN)基数排序O(d(n+r))一. 冒泡排序(BubbleSort)基本思想:两个数比较大小,较大的数下沉,较小的数冒起来。过程:比较相邻的两个数据,如果第二个数小,就交换位置。从后向前两两比较,一直到比较最前两个数据。最终最小...转载 2018-03-13 15:13:15 · 162 阅读 · 0 评论 -
android基础知识
1.Android Paint和Color类要绘图,首先得调整画笔,待画笔调整好之后,再将图像绘制到画布上,这样才可以显示在手机屏幕上。Android 中的画笔是 Paint类,Paint 中包含了很多方法对其属性进行设置,主要方法如下: setAntiAlias: 设置画笔的锯齿效果。 setColor: 设置画笔颜色 setARGB: 设置画笔的a,r,p,g值。 s...转载 2018-03-23 17:17:02 · 238 阅读 · 0 评论 -
Android中attrs.xml文件的使用详解
1. attrs.xml 的作用控件有很多属性,如 android:id、android:layout_width、android:layout_height等,但是这些属性都是系统自带的属性。使用attrs.xml文件,可以自己定义属性,下面我会写些小 demo ,比较好理解2. 在values文件夹下,新建一个attrs.xml文件内容如下:<?xml version="1.0" en...转载 2018-03-23 17:23:15 · 1166 阅读 · 0 评论 -
自动换行的线性布局
废话不多说,直接上代码:/** * 自动换行布局 * Created by 马占柱 on 2018/4/20. */public class WrapLayout extends ViewGroup { private static final String TAG = "WrapLayout"; /** * TextView的style */ ...原创 2018-04-20 16:32:27 · 716 阅读 · 0 评论 -
SharedPreferences工具类(SPUtils)
package xiaodan.www.amor_love.Utils;import android.content.Context;import android.content.SharedPreferences;import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;i...原创 2018-05-03 15:41:04 · 392 阅读 · 0 评论 -
Google I/O 2018 之后, Android 工程师将何去何从?
公司一直有 Android 工程师免费参加 Google I/O 的福利,前两年缺了一点点运气,今年有幸搭上这班车,近距离感受现场的氛围,不得不说, Google 是全世界最伟大的公司,没有之一。但这并不重要,重要的作为 Android 工程师,未来的路该怎么走,这里说的 Android 工程师,不仅包括刚出校园的新人,也包括在社会上打拼多年的老司机。Android 工程师真的烂大街了么?Goog...转载 2018-05-10 09:52:22 · 478 阅读 · 0 评论 -
Android-AndroidStudio中常用的快捷键
IDE按键说明F1帮助Alt(Option)+F1查找文件所在目录位置Alt(Option)+1快速打开或隐藏工程面板Ctrl(Command)+Alt(Option)+打开设置对话框Alt(Option)+Home跳转到导航栏Esc光标返回编辑框Shift+Esc光标返回编辑框,关闭无用的窗口Shift+Click关闭标签页F12把焦点从编辑器移到最近使用的工具窗口Ctrl(Command)+A...原创 2018-05-30 16:04:25 · 446 阅读 · 0 评论 -
Android Studio 下自动注释(自定义作者,类作用等)
很简单,首先打开你的Android Studio 在工具栏点击如图小图标【也就是“File”下面的“setting”设置页面】 然后在进入页面里搜索:File and Code Templates,如图再如图新建一个类试试改完瞬间逼格高了一个档次有木有哈哈哈。...原创 2018-06-29 16:12:17 · 825 阅读 · 4 评论 -
ProgressBar 圆形进度条颜色的设置
ProgressBar分圆形进度条和水平进度条我这里就分享下如何设置圆形进度条的颜色吧,希望对大家会有帮助。源码如下:布局文件代码:<ProgressBar android:id="@+id/progressbar" android:layout_width="wrap_content" android:layout_height="wrap_content" an...原创 2018-06-29 16:53:54 · 2024 阅读 · 0 评论 -
Android中View的测量和布局过程
一直以来只是粗略的知道View的绘制会经过measure、layout到最终的draw三个过程,但对其中详细的measure和layout过程一无所知,很影响对一些特殊场景下的布局。ViewRoot和DecorViewViewRootViewRoot对应ViewRootImpl类,它是连接WindowManager和DecorView的纽带,View的三大流程均是通过ViewRootI...转载 2018-07-26 09:39:20 · 206 阅读 · 0 评论 -
任何一个APP开发,都可以用到的工具类!ApiUtils
/** * Created by 马占柱 on 2018/07/31. */public class ApiUtils { private final int PHONE = 0;//手机号验证 private final int HANZI = 1;//中文、数字或字母 public static String title = "title"; publ...原创 2018-07-31 16:06:16 · 1259 阅读 · 0 评论 -
理解与配置Android studio中的gradle
使用gradle构建android应用时,你总是需要这样一个文件:build.gradle。你应该已经看过这个文件了,如果没有看过的话,你现在就可以看一下,它没有多少内容。它的简洁性得益于它提供了很多对设置和属性的默认值。gradle是基于groovy语言的,不过如果只是用它构建普通的工程的话,是可以不去学groovy的,如果想深入的做一下自定义的构建插件,可以考虑学一下groovy,因为它是基于...转载 2018-08-20 17:01:41 · 269 阅读 · 0 评论 -
安卓开发颜色工具类
这绝对是开发中能用到的工具类~绝对的 <!-- 白色 --> <color name="ivory">#FFFFF0</color> <!-- 象牙色 --> <color ...原创 2018-10-18 16:51:36 · 270 阅读 · 0 评论 -
如何使用命令行执行java程序
直接上操作**首先我们需要一段java程序,一个简单的Hello Java为例:public class HelloJava{ public static void main(String[] args){ System.out.println("Hello Java"); }}把上述代码保存为.txt文档后,将后缀名改为.java 得到文件如图: 图标不一样不要...原创 2018-02-26 15:50:16 · 385 阅读 · 0 评论