记录容易忽略的点

0.日志打印会有缺失记得避免copy时错误

1.recycleView 无法刷新 用runonuithread 更新

2.点击事件没有触发  被上一层的ui遮挡 只是没显示出来

3.BottomSheetDialog 可仿制斗音评论弹窗

4.启动白屏问题

<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">#FFF</item>
<item name="android:windowDisablePreview">true</item>

 5.chales 配置https证书后需在proxy->ssl Proxying settings  include :443 " , ":"等

 6.java8 常用

// 获取对应的平方数
        List<Integer> squaresList = numbers.stream().map( i -> i*i).distinct().collect(Collectors.toList());
        System.out.println("first: " +  (squaresList.get(0))); // 9 4 49 25 distinct去重复

        List<String> stringss = Arrays.asList("abc", "", "bc", "efg", "abcd","", "jkl");
        List<String> filtered = stringss.stream().filter(string -> string.equals("") || string.equals("jkl")).collect(Collectors.toList());
        System.out.println("条件筛选列表: " + filtered);
        //筛选列表: [abc, bc, efg, abcd, jkl]
        String mergedString = stringss.stream().filter(string -> !string.isEmpty()).collect(Collectors.joining(", "));
        System.out.println("合并字符串: " + mergedString);
        //合并字符串: abc, bc, efg, abcd, jkl
        List<Integer> integers = Arrays.asList(1,55,555);
        integers.forEach(integer -> {});
List<User> userList = new ArrayList<>();
userList.add(new User("a", "xiaoming",12)); // getuserid 第一个参数
userList.add(new User("b", "xiaomings",13));
userList.add(new User("d", "xiaoming",15));
userList.add(new User("a", "xiaoming",14));

System.out.println("利用Collectors.toMap去重:");
        //利用Collectors.toMap去重
        userList.stream()
        //或者这样写 Collectors.toMap(m -> m.getUserId(),
        .collect(Collectors.toMap(User::getUserAge,
                Function.identity(), (oldValue, newValue) -> newValue))
        .values()
        .forEach(System.out::println); //打印
         // 利用Collectors.toCollection和 treeset去重
         userList.stream()
        .collect(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(User::getUserId))))
                 .forEach(System.out::println);
objectObjectMap.forEach((key, value) -> {
    System.out.println("key "+ key);
    System.out.println("value "+ value);
});
 for (Map.Entry<Object, Object>  map:  objectObjectMap.entrySet()) {
    
 }

7.kotlin 

// ?. 代表着如果该类型为空的话就返回null不做后续的操作,如果不为空的话才会去访问对应的方法或者属性
//!!. 代表着如果该类型为空的话就抛出NullPointerException,如果不为空就去访问对应的方法或者属性,
// 通过let语句,在?.let之后,如果为空不会有任何操作,只有在非空的时候才会执行let之后的操作 .返回值是函数里面最后一行,或者指定return。
// ?: 与 ?. 相反 符号会在符号左边为空的情况才会进行下面的处理,不为空则不会有任何操作

Kotlin系列之let、with、run、apply、also函数的使用_Mikyou的专栏-CSDN博客_kotlin with

8. dart :

// 如果需要在编译时就固定变量的值,可以使用 const 类型变量
// 如果 Const 变量是类级别的,需要标记为 static const
// 使用with关键字折叠其他类以实现代码重用。当属性和方法重复时,以当前类为准。
// 如果想使用和Java接口一样的功能可以使用Mixins和implements两种方式

9. android studio xml java 文件乱码问题解决
.删除C:\Users\你的用户文件夹\.AndroidStudio3.6\system\caches下的所有文件(3.6是我的AndroidStudio版本)

10.connect to maven.google.com:443 问题处理 maven {url 'https://dl.google.com/dl/android/maven2/'} 替换google() (

网上说最新版本的Android Studio (Canary 9) + Gradle 已经使用 google()来指代 google 仓库了,会自动解析到https://dl.google.com/dl/android/maven2/。)

allprojects {
  repositories {
    maven {url 'https://dl.google.com/dl/android/maven2/'}
    maven {url 'https://www.jitpack.io'}
    jcenter()
  }
}

11.IO Andorid 地址

// write reader 字符流 // inputStream outPutStream 字节流 // 1、Environment.getDataDirectory() = /data //这个方法是获取内部存储的根路径 //2、getFilesDir().getAbsolutePath() = /data/user/0/packname/files //这个方法是获取某个应用在内部存储中的files路径 //3、getCacheDir().getAbsolutePath() = /data/user/0/packname/cache //这个方法是获取某个应用在内部存储中的cache路径 //4、getDir(“myFile”, MODE_PRIVATE).getAbsolutePath() = /data/user/0/packname/app_myFile //这个方法是获取某个应用在内部存储中的自定义路径 //方法2,3,4的路径中都带有包名,说明他们是属于某个应用 //………………………………………………………………………………………… //5、Environment.getExternalStorageDirectory().getAbsolutePath() = /storage/emulated/0 //这个方法是获取外部存储的根路径 //6、Environment.getExternalStoragePublicDirectory(“”).getAbsolutePath() = /storage/emulated/0 //这个方法是获取外部存储的根路径 //7、getExternalFilesDir(“”).getAbsolutePath() = /storage/emulated/0/Android/data/packname/files //这个方法是获取某个应用在外部存储中的files路径 //8、getExternalCacheDir().getAbsolutePath() = /storage/emulated/0/Android/data/packname/cache //这个方法是获取某个应用在外部存储中的cache路径 // Environment.getDownloadCacheDirectory() = /cache // Environment.getRootDirectory() = /system // 1.内部存储 随应用卸载而删除 并且空间有限 用Context 获取 val filesDir = filesDir.absolutePath val cacheDir = cacheDir.absolutePath val dataDire = Environment.getDataDirectory() // 2.外部存储 // /storage/emulated/0/Android/data/com.kakebang.movingrescue/files/mounted/zxp/pdf val externalFileDir = getExternalFilesDir(MEDIA_MOUNTED)?.absolutePath val externalCacheDir = externalCacheDir?.absolutePath

12. databinding 用kotlin 是需要添加

apply plugin: 'kotlin-kapt'
kapt {
    generateStubs = true
}

才能使用BR 

 13module 依赖想给主项目使用需要把module中的所有需要使用的依赖  implementation  更改为 api  就可以了!

  14. 防止底部布局被手机底部自带布局遮挡可在布局中添加

android:fitsSystemWindows="true"
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值