- 博客(33)
- 收藏
- 关注
原创 悬浮窗,ViewPager2内嵌套RecyclerView,RecyclerView高度异常的问题分析
在一个Adnroid项目中,使用到了悬浮窗,其中有一个需求是以分页的显示显示媒体item,每一页中展示的媒体item是一个网格列表的形式显示的。
2024-11-17 16:12:57
1191
原创 腾讯PAG 动画库Android版本的一个问题与排查记录
Android project中有加载动画的需求,设计师推荐使用腾讯的pag动画。项目中使用到的pag android库的版本是:com.tencent.tav:libpag:4.3.50。
2024-10-18 16:47:32
580
原创 github拉代码出现:error: RPC failed; curl 18 transfer closed with outstanding read data remaining xxx。
在拉取github上https://github.com/noties/Markwon,通过https协议拉取。
2024-05-19 17:50:54
1109
原创 AndroidStudio AGP 7+, 编译aar并输出到本地仓库
{projectbuildDir上述配置经build后会生成一个的task。在gradle面板中可以搜索到这个task。
2024-04-15 18:25:04
754
原创 IntelliJ IDEA 2022.3.2 解决decompiled.class file bytecode version:52.0(java 8)
使用idea 打开一个Kotlin语言编写的demo项目,该项目使用gradle构建。该项目是用来学习Koltin语法的,比如协程等。在查看某个类的函数源码的时候出现了且打开是.class文件。ps:该图片为参考图片,本人在解决了该问题忘记保存出现问题时候的截图了。
2024-04-14 18:49:31
2727
原创 AndroidStudio 由dolphin升级到giraffe,出现“gradle project sync failed“
AndroidStudio升级,jdk-17
2024-03-17 23:31:21
2351
2
原创 Coroutine + Retrofit 封装网络请求
本文以wanandroid项目服务器提供的接口https://www.wanandroid.com/user/login为例来描述客户端需要定义的实体类。"data": {26980],"type": 0,},另外我们要考虑到服务器返回的业务数据出错的情况,针对本例,即json数据的errorCode不为0,且data字段为null的情况。
2023-11-01 17:22:16
370
原创 SwipeRecyclerView开源库源码分析之(一)触摸事件处理分析
SwipeRecyclerView开源库源码分析之(一)触摸事件处理分析。
2023-05-14 18:02:54
678
原创 Android Studio Dolphin出現Decompiled .class file,bytecode version:51.0(Java 7)无法查看源码
Android Studio Dolphin出現Decompiled .class file,bytecode version:51.0(Java 7)无法查看源码@之前遇到类似的问题,都尝试点击右边的download source按钮可以解决,或者解决不了就不继续进行尝试了。今天在查看一个开源的项目后,编译成功并可以成功运行,在查看源码的时候,有个文件显示的使.class文件而非.java文件,对阅读非常不友好,就试着着手解决。
2023-04-16 18:04:04
2005
原创 解决org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.30 下载慢
问题背景:当我升级AS到Bumblebee版本之后,打开某一project发现根目录的build.gradle中配置的kotlin-gradle-plugin由1.5.20自动给升级到了1.5.30.但是项目预编译的过程中始终显示org.jetbrains.kotlin:kotlin-gradle-plugin 1.5.30在下载中,打开本地C盘.gradle的如下目录上图是我下载成功之后的状态,可知kotlin-compiler-embeddable插件下载的位置为:C:\Users\Admin.
2022-05-08 23:33:22
12040
原创 本地项目添加到github已创建的repository中
具体步骤如下:前提:在github上手动创建仓库UnitTestJava。在本地按照如下的命令进行1、 cd到已存在的工程项目根目录下。2、 git init3、 git add xxx #添加要push到远程仓库的文件或文件夹4、 git commit -m ‘xxxx’5、 git remote add originhttps://<token>@github.com/aSmartTortoise/UnitTestJava.git#建立远程仓库6、 gi.
2022-01-04 22:09:53
647
原创 gradle版本导致依赖的远程库不能下载到本地
问题描述:使用idea进行Kotlin协程学习的时候,创建对应的demo project,在项目的build.gradle文件中添加依赖implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.4.2'发现许久对应的jar包没能下载下来,对应的底部Build面板有如下error报出:exception during working with external system: java.lang.AssertionError
2021-07-26 21:59:30
1771
原创 GridLayoutManager情况下的RecylcerView,其item的左右offset的设置
(1)如果recyclerView的左右外边距和左右内边距均为零。则其示意图如下(2)如果recyclerView的左右外边距和左右内边距有不为零的。则其示意图如下有此得出经典的gridLayoutManager情况下RecyclerView的item左右offset的公式如下:rcvItems.addItemDecoration(new RecyclerView.ItemD...
2019-08-19 16:50:47
929
原创 ViewPager 其中一个page中的edittext,抢占另一个page页中的imageButton或者textView的焦点案例分析
最近项目中的注册功能时候遇到这么一个案例,困扰我了好一会儿,故此简单分析下期中的来龙去脉,以便加深自己的理解。1.案例背景如下图所示,图片有左至右为page1,page2。用户在第一个page,先通过手机号获取验证码;获取到验证码后跳转到输入验证码page。我使用ViewPager+fragment实现这两个页面以及之间的数据交互和页面之间的切换。2.案例描述、问题推断和处理办...
2019-07-11 18:22:57
524
原创 由ExpandableTextView 联想到的关于自定义控件和View api的点滴
1 View.post(Runnable action), View.postDelay(1)使用View.post(Runnable action)可用来获取View的尺寸信息。(2)action 是在主线程执行的。2 onFinishInflate该方法先于onMeasure方法执行。当子View的内容发生变化的时候父View的onMeasure方法会被调用。3 TextV...
2019-07-03 11:02:40
141
原创 Windows7 PowerShell 2.0升级到 PowerShell 5.1
Windows7 sp1内置的PowerShell的版本是v2.0,现需要将其升级到v5.1,过程中有一个环节需要引起注意,为了以后查阅的方便,现将其记录下来。1 查看PowerShell版本Windows + R 输入powershell回车,打开命令行窗口,输入$PSVersionTable ,查看powershell版本号,Windows7 sp1内置的版本如下:2.安装必要...
2019-06-26 13:49:40
18611
3
原创 AndroidStudio xml 中编写代码 ,没有自动提示,或者提示“cannot find declaration to go to”的一种解决方案
开始遇到这个问题的时候,简直一头雾水,根据“cannot find declaration to go to”关键字baidu查找了好多篇博客,依旧没找到有效的解决方案,在stack overflow中也看了数篇也没能解决。然后无意中看到了这篇“https://blog.youkuaiyun.com/DeMonliuhui/article/details/83060944”的第三点编译用的sdk版本有问题。...
2019-06-11 11:55:24
3727
原创 H5唤起原生app,Android端的实现思路
通过H5唤起原生应用是一个常见的需求,可以实现引流的作用,而且原生页面的体验一般要比H5体验性好些。URL scheme这种唤端媒介是一个比较妥当的实现H5唤起原生应用的方式。1 app端的需求 H5唤起app,是要打开指定页面的。对于app打开指定页面后的返回处理有两种情况: (1)app之前未启动;(2)app在系统任务组中,处于后台存活状态。 对...
2019-04-26 10:59:37
6128
原创 强制同一个project下的使用到相同开源库(okhttp)的module依赖同一版本
摘要:在Android app开发中,难免会遇到一个project下的不同module(不同的jar包)使用到同一个开源库,这时候由于这些library或者jar包的版本迭代有差别,可能会导致某一个library在编译或运行阶段报错。解决该问题的一个办法就是强制让这些module(library或jar)使用同一个版本的依赖库。具体操作是在app的build.gradle文件的dependec...
2019-04-12 17:15:20
742
原创 RecyclerView 局部刷新 item 闪动问题解决
列表页面的刷新经常会尝试去对某一个position的item做刷新处理,这时如果调用adapter的notifyItemChanged(int position)的方法,对应positon的item会闪动一下,体验不友好。经多番网上查阅资料后找到了比较可靠的解决方案。局部刷新调用adapter的notifyItemChanged(int position, Object payload)的方法。...
2019-02-20 16:20:27
4792
转载 No USB devices or running emulators detected
参考文章链接 https://blog.youkuaiyun.com/qq_27035123/article/details/75309280我这里遇到的情况是adb interface 错误:未安装,在这个网站:http://adbdriver.com/downloads/下载了Automated installation(Universal)之后,重新安装了adb interface之后,我的设备出现在了...
2018-04-10 09:05:07
701
转载 Handler的异步消息机制
Handler异步通信机制(包含Looper、 MessageQueue)https://www.jianshu.com/p/9fe944ee02f71.作用Handler的消息传递机制用来实现子线程对UI线程中UI的更新。2.相关概念2.1Looper轮循器,扮演MessageQueue和Handler之前桥梁的作用。主要负责创建MessageQueue;与当前线程绑定;消息循环:循环取出Mes...
2018-03-13 14:46:41
535
原创 View事件传递(解决聊天界面点击除editText区域以外其他位置实现隐藏软键盘----点击发送按钮不隐藏软键盘)
在开发聊天界面的时候往往遇到类似这样的需求"点击除editText区域以外其他位置实现隐藏软键盘----点击发送按钮不隐藏软键盘"实现思路是在聊天界面的Activity重写 dispatchTouchEvent方法@Overridepublic boolean dispatchTouchEvent(MotionEvent event) { // TextView tvSe
2018-01-20 17:05:56
949
原创 View的绘制流程
参考文章链接 http://a.codekk.com/detail/Android/lightSky/%E5%85%AC%E5%85%B1%E6%8A%80%E6%9C%AF%E7%82%B9%E4%B9%8B%20View%20%E7%BB%98%E5%88%B6%E6%B5%81%E7%A8%8B1.View树的绘图流程View树的绘制是自上而下进行遍历,由父视图到子视图,每一个V
2018-01-20 13:34:51
244
转载 Android 坐标系统
http://blog.youkuaiyun.com/yanbober/article/details/50419117
2017-11-29 10:45:53
378
原创 Android关于 getWindowVisibleDisplayFrame()的理解
getWindowVisibleDisplayFrame()这个api是用来获取窗口可视区域大小的。该大小会受到系统状态栏,软键盘和虚拟按键栏的影响。在应用开发中可利用该api来获取状态栏的高度,软键盘的高度和虚拟按键栏的高度。详细知识可参考一下链接。http://blog.youkuaiyun.com/ccpat/article/details/55224475#t2
2017-11-05 18:41:07
1743
转载 lib依赖导致在app运行的时候出现的异常 Cause: com.android.dex.DexException: Multiple dex files define
如果你用Android Studio开发,并且要用其他项目作为library,这个问题是很容易出现的。出现这个问题的原因是包的重复引用,意思就是在你自己的项目中引用了某个包,而被你作为library的项目也引用了同一个包,就会有这个问题。 那如何解决呢?方法如下: 1.从下图可以看到我在rtmpResourceLib中有加了一个gensee_rtmpplayer.jar 和gensee_exp
2017-02-04 17:51:38
556
原创 fragment在app中的使用总结1
1.fragment有两种切换方式。1.1.replace方式 transaction.replace(R.id.content, IndexFragment);1.2.add-hide-show方式 transaction.add(R.id.content, IndexFragment); transaction.hide(otherfragment); transaction
2017-01-26 19:43:41
323
转载 自定义对话框学习记录01
有的时候安卓内置的对话框不能满足我们的需要,或许是功能不齐全亦或者不符合我们的界面设计要求,这个时候我们就需要弄一个我们自己设置的对话框了,下面我将为大家讲一种很简单的方法创建自己的对话框。 首先创建一个style 即:....... 接着创建你自己的对话框布局:可自行设计。 创建一个自己的Dialog类继承Dialog,即:public SettingDialog ex
2016-10-06 22:52:30
275
原创 文章标题
获取手机内置SD卡(以我的手机sonyZ1mini为例叫“内部存储设备”)根目录的路径的api是 String path = Environment.getExternalStorageDirectory().getAbsolutePath();
2016-09-22 00:04:28
274
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人