- 博客(1342)
- 资源 (10)
- 收藏
- 关注
原创 开发新项目注意事项
4共性的东西一定要抽象出来,做好base Library----(写项目的注意事项也可做为面试题)2Review代码的重要性,代码不断升级的过程就是能力不断提高的过程。3设计的重要性,开发之前先做好足够的设计,边做边想那是新手的体现。6开发小组的重要性—找到志同道合的小伙伴,一起进步。5有问题做好笔记,不断总结提高。1注释的重要性,勤加注释。
2022-08-22 09:26:22 156
原创 Adapter中自定义回调接口
private onItemClick listener;viewHolder.llShopcaritem.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if(listener!=null){ Log.e("wy", "76onClick: " ); .
2022-04-12 10:02:14 705
原创 java多线程问题(代码示例)
前言:实际开发中光听说多线程问题,多线程问题,到底啥是多线程问题?解释:多线程问题是指:多个线程(2个及以上)在长循环中同时操作同一个变量(可延伸为内存空间),会导致变量错乱问题(可能不是我们想要的结果)mThread.join();等待线程执行完毕final int[] num = new int[1]; Thread mThread = new Thread() { @Override public void run() {
2021-03-23 17:37:37 257 2
原创 RecyclerView在点击事件的处理上也优于ListView
主要是细节的支持,ListView直接提供setOnItemClickListener,而RecyclerView没有,是因为RV考虑的更细节,比如我要点击条目上的某个图标生效,使用ListView会很难实现,但是RV实现会很容易,直接在适配器中由ViewHolder直接调用。
2023-10-31 19:45:26 206
原创 黑科技-Android
原理:我们修复好了bug的时候,把那些有改动的java源码编译成class,再打包成dex,然后通过反射技术放到dexElements数组的最前面,这样系统在通过PathClassLoader找class时,首先找到的是我们放在最前面的修复好了的class,然后就不会再往后面找了,相当于实现了热修复。这样有bug的class就不会被用到了。热更新(热修复):apk不用发版,就能修复bug。
2023-10-07 17:10:47 328
原创 CPU acceleration status: KVM requires a CPU that supports vmx or svm
关闭虚拟机,选择处理器将虚拟化引擎第一个选项选上,重新打开虚拟机,进行编译打开模拟器。
2023-07-01 17:53:27 634
原创 windows合并磁盘
步骤1:点击电脑桌面上的 【控制面板】,找到【管理工具】中的【计算器管理】,然后点击左侧的【磁盘管理】。步骤2:找到需要合并的两个相邻的分区,右键点击【删除卷】,删除这两个分区。步骤3:选择删除的分区空间,右键点击【新建简单卷】,按照提示进行分区的设置。
2023-07-01 11:58:29 341
原创 微信默认存储路径
C:\Users\dxfdzyddh\Documents\WeChat Files\wxid_tdc29w3336yh22\FileStorage\File
2023-06-26 22:46:11 288
原创 串口通信(蓝牙也是串口通信)
指的是信号被调制以后在单位时间内的变化,即单位时间内载波参数变化的次数,如每秒钟传送240个字符,而每个字符格式包含10位(1个起始位,1个停止位,8个数据位),这时的波特率为240Bd,比特率为10位*240个/秒=2400bps。高波特率常常用于放置的很近的仪器间的通信,典型的例子就是GPIB设备的通信。对于偶和奇校验的情况,串口会设置校验位(数据位后面的一位),用一个值确保传输的数据有偶个或者奇个逻辑高位。当计算机发送一个信息包,实际的数据往往不会是8位的,标准的值是6、7和8位。
2023-04-15 07:49:59 952
原创 网约车从业资格证题库(人证)
http://qdjt.qingdao.gov.cn/jtj_zwgk/jtj_zwgk5/202207/t20220711_6252120.shtml
2023-03-21 19:48:30 459
原创 Android与Flutter之间通信的四种实现方式
https://blog.csdn.net/m0_65321095/article/details/122970146
2023-02-15 13:35:45 394
原创 泛型-kotlin
Kotlin还允许我们对泛型的类型进行限制。在一般的编程模式下,我们需要给任何一个变量指定一个具体的类型,而泛型允许我们在不指定具体类型的情况下进行编程,这样编写出来的代码将会拥有更好的扩展性。如果我们不想定义一个泛型类,只是想定义一个泛型方法,应该要怎么写呢?:一种是定义泛型类,另一种是定义泛型方法,使用的语法结构都是。
2023-02-15 13:35:08 70
原创 内联函数的功能
Lambda表达式在底层被转换成了匿名类的实现方式。这就表明,我们每调用一次Lambda表达式,都会创建一个新的匿名类实例,当然也会造成额外的内存和性能开销。为了解决这个问题,Kotlin提供了内联函数的功能,它可以将使用Lambda表达式带来的运行时开销完全消除。
2023-02-11 11:46:04 92
原创 kt->Lambda表达式
首先最外层是一对大括号,如果有参数传入到Lambda表达式中的话,我们还需要声明参数列表,参数列表的结尾使用一个->符号,表示参数列表的结束以及函数体的开始,函数体中可以编写任意行代码(虽然不建议编写太长的代码),并且最后一行代码会自动作为Lambda表达式的返回值.{参数名1: 参数类型, 参数名2: 参数类型 -> 函数体}
2022-12-28 11:05:59 134
原创 kt-with函数
with函数会在Lambda表达式中提供第一个参数对象的上下文,并使用Lambda表达式中的最后一行代码作为返回值返回。首先我们给with函数的第一个参数传入了一个StringBuilder对象,那么接下来整个Lambda表达式的上下文就会是这个。builder.append()和builder.toString()方法了,而是可以直接调用append()和。Lambda表达式的最后一行代码会作为with函数的返回值返回,最终我们。with函数接收两个参数:第一个参数可以是一个任意类型的对。
2022-12-27 11:04:12 76
ReclyclerView去掉最后一个条目分割线
2017-07-17
CoordinatorLayout与AppBarLayout
2017-06-28
终于找到一个快速嵌入项目、简单、好用的TabLayout+ViewPager的Demo了(付费与免费的差距,你懂得)
2017-06-27
universal-image-loader-1.9.5.jar
2016-08-18
mvi是解决什么问题的
2022-09-30
TA创建的收藏夹 TA关注的收藏夹
TA关注的人