![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
安卓
牵着蜗牛去散步zjp
android开发
展开
-
“build was configured to prefer settings repositories over project repositories”解决方法
settings.gridle中是这样的pluginManagement { repositories { gradlePluginPortal() google() mavenCentral() }}dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories {原创 2022-05-16 09:25:19 · 2198 阅读 · 0 评论 -
EditText的输入限制只输入汉字
通过正则方法限制public static String (String str) throws PatternSyntaxException { //只允许汉字 String regEx = "[^\u4E00-\u9FA5]"; Pattern p = Pattern.compile(regEx); Matcher m = p.matcher(str); return m.replaceAll("").trim();}然后在et.addTe原创 2022-05-15 20:49:49 · 482 阅读 · 0 评论 -
Android JetPack——ViewModel原理
ViewModel的作用MVVM框架的主要组件ViewModel一般跟LiveData组合使用(1)将activity, fragment里关于数据操作的逻辑抽离出来,封装到ViewModel中,所以ViewMoel 持有一个成员变量LiveData<T>。(2)数据的操作包括什么呢? a. 从DB和缓存读取数据,显示到UI; b. 通过网络到后台拉取数据,持久化到本地,更新DB和缓存,通知UI刷新。(3)因此ViewModel 应该持有一个 成员变量Repository(相原创 2022-05-06 10:42:50 · 260 阅读 · 0 评论 -
Kotlion协程 KotlionFlow
知道协程么?协程的目的是,简化复杂的异步代码逻辑,用同步的代码写出复杂的异步代码逻辑。协程到底有什么用?使用协程就可以让我们摆脱因为多线程带来的各种编码上的不便:(主线程和子线程之间的切换)多线程同步编程可以通过加锁解决数据的线程安全问题,但是加锁会降低程序执行效率,并且锁多了,会有死锁隐患 协程是运行在线程之上的优化产物,或称“微线程”。协程依赖线程运行,复杂的底层逻辑被封装在库内,使用时无需关心所处线程状态 使用协程,开发者可以自己控制协程的状态(suspend挂起,resume恢复原创 2022-04-25 09:36:36 · 184 阅读 · 0 评论 -
安卓网络请求之日志拦截器
自己用起来比较顺手的日志拦截器//收集请求参数,方便调试StringBuilder paramsBuilder = new StringBuilder();StringBuilder jsonBuilder = new StringBuilder();String url = orgRequest.url().toString();String merge = orgRequest.url().toString();int last = merge.lastIndexOf('/原创 2022-04-15 23:16:51 · 2195 阅读 · 0 评论 -
新公司第一天之Android studio的git重新配置
一:重新生产ssh文件1:下载git2:执行命令行$ ssh-keygen -t rsa -C "your_email@example.com"(不用管之前有没有创建过 直接覆盖新生成自己的)3:拷贝 id_rsa.pub 文件的内容 放入到自己的gitlab设置里4:配置用户名密码git config user.name "用户名"git config user.email "邮箱"5:然后打开As 去clone代码输入项目地址 和保存在本地的文件夹6:旧的电脑原创 2022-04-12 17:00:56 · 3540 阅读 · 0 评论 -
JectPack的详细讲解分类
Jectpack是个组件库引用自知乎大神的图片目前总共有85个组件库简单点分为三类1:核心类(8个)2:架构组件(10个)3:ui组件(22个)4:特殊业务组件(16个)5:用不到的组件(15个)6:弃用的组件(11个)7:测试的组件(2个)...原创 2022-03-23 22:11:11 · 2838 阅读 · 0 评论 -
2022-02-23 安卓开发七年面试题总结
1:okhttp的责任链模式顾名思义是将多个节点通过链条的方式连接起来,每一个节点相当于一个对象,而每一个对象层层相关,直接或者间接引用下一个对象(节点);直到链条中有一个节点处理头节点传下来的事件截止。2:自定义ViewonMeasure(测量),onLayout(摆放),OnDraw(绘制),继承自View或者ViewGroup然后测量摆放绘制,然后做做动画,最后写写接口给调用者调用。3:Glide的三级缓存因为android默认给每一个应用分配16M的内存,如果加载过多的图片的原创 2022-02-23 09:44:52 · 1332 阅读 · 1 评论 -
Android studio @Author的使用以及TAG的自动生成
打开setting–》editor–》File and CodeTemplates,找到其中的Includes选项卡,设置FileHeader为如下代码:/*** @author yourname* @date ${DATE} ${TIME}*/原创 2022-03-04 16:01:15 · 3596 阅读 · 0 评论 -
我自己常用的Android studio的一些比较方便的插件
真的好用,直接上图,具体用途自己百度原创 2022-03-04 15:28:18 · 2116 阅读 · 0 评论 -
简简单单搞个九宫格
1:布局文件<CommongridView android:id="@+id/rv_img" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/content_tv" android:layout_marginLeft="12dp" android:layout_marginTop="12dp"原创 2022-01-14 11:04:41 · 89 阅读 · 0 评论 -
省市区三级联动+网络获取省市区数据
用到了implementation 'com.contrarywind:Android-PickerView:4.1.7'package org.wzeiri.android.sahar.ui.salary.activity;import android.annotation.SuppressLint;import android.content.Context;import android.content.Intent;import android.graphics.Col原创 2022-01-05 19:25:50 · 1498 阅读 · 0 评论 -
Base64文件转化成图片并保存在本地
因为要保存图片跟H5交互H5给出了Base64的文件流1:将base64转化成bitmap//将base64转换成图片并加载public static Bitmap stringToBitmap(String string) { Bitmap bitmap = null; try { byte[] bitmapArray = Base64.decode(string.split(",")[1], Base64.DEFAULT); bitmap.原创 2022-01-04 20:10:40 · 5415 阅读 · 0 评论 -
颜色不透明度16进制对照表
100% — FF99% — FC98% — FA97% — F796% — F595% — F294% — F093% — ED92% — EB91% — E890% — E689% — E388% — E087% — DE86% — DB85% — D984% — D683% — D482% — D181% — CF80% — CC79% — C978% — C777% — C476% — C275% — BF74% — BD73% — BA72%原创 2021-12-24 17:55:01 · 446 阅读 · 0 评论 -
原生微信登录开发记录
原生微信登录开发记录(微信开发文档太陈旧了不更新)欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。微信回调页面public class WXEntryActivity extends Activity implements IWXAPIEventHandler {private static final String TAG = “WXEntr原创 2021-12-16 10:03:58 · 1183 阅读 · 0 评论