- 博客(104)
- 资源 (1)
- 收藏
- 关注
原创 Android取消深色适配
当系统设置深色主题背景或者进入省电模式情况下会进入深色主题背景模式,这样就会导致系统页面都是黑色的显得很不美观,进入了深色主题模式,产品要求禁用深色主题模式,所以功能开发需要要求禁用深色主题功能。我们常见的需要设置的资源有drawable、layout、mipmap和values等,对于这些资源,我们可以用一些限定符来表示提供一些备用资源,例如drawable-xhdpi表示超密度屏幕使用的资源,或者layout-land表示横向状态使用的布局。Tips:注意,深色模式变化会导致Activity重建。
2023-12-13 09:54:52 1751
转载 安卓的版本对照表
参考原文链接:https://blog.csdn.net/huazai30000/article/details/131221927
2023-09-12 17:05:49 1308
原创 Andorid广播
Android中的广播主要可以分为两种类型:标准广播和有序广播。然后在AndroidManifest.xml中对这个BroadcastReceiver进行修改:</</</</...) {......对第2步调用的setPackage()方法进行更详细的说明:在Android 8.0系统之后,静态注册的BroadcastReceiver是无法接收隐式广播的,而默认情况下发出的自定义广播恰恰都是隐式广播。
2023-08-22 14:06:15 479
原创 Android日志
当有错误信息打印出来的时候,一般代表你的程序出现严重问题了,必须尽快修复。用于打印一些警告信息,提示程序在这个地方可能会有潜在的风险,最好去修复一下这些出现警告的地方。用于打印一些比较重要的数据,这些数据应该是你非常想看到的、可以帮你分析用户行为的数据。Android中的日志工具类是Log(android.util.Log),这个类中提供了如下5个方法来供我们打印日志。用于打印一些调试信息,这些信息对你调试程序和分析问题应该是有帮助的。对应级别verbose,是Android日志里面级别最低的一种。
2023-08-01 15:44:38 430
原创 Android屏幕像素密度
有时需要为视图属性指定大小尺寸值(通常以像素为单位,有时也用点、毫米或英寸)。一些常见的属性包括文字大小(text size)、边距(margin)以及内边距(padding)。文字大小指定设备上显示的文字像素高度;边距指定视图部件间的距离;内边距指定视图外边框与其内容间的距离。
2023-08-01 15:39:25 325
原创 Andorid目录后缀名代表的设备的像素密度
mdpi:中等像素密度屏幕(约160dpi)hdpi:高像素密度屏幕(约240dpi)xhdpi:超高像素密度屏幕(约320dpi)xxhdpi:超超高像素密度屏幕(约480dpi)xxxhdpi:超超超高像素密度屏幕(约640dpi)
2023-08-01 15:22:03 186
原创 Kotlin线程的基本用法
这里的thread是一个Kotlin内置的顶层函数,我们只需要在Lambda表达式中编写具体的逻辑就可以了,连start()方法都不用调用,thread函数在内部帮我们全部都处理好了。
2023-07-28 09:24:31 807
原创 Git时间:版本控制工具进阶
Git允许用户将指定的文件或目录排除在版本控制之外,它会检查代码仓库的目录下是否存在一个名为.gitignore的文件,如果存在,就去一行行读取这个文件中的内容,并把每一行指定的文件或目录排除在版本控制之外。不过,这种撤销方式只适用于那些还没有执行过add命令的文件,如果某个文件已经被添加过了,这种方式就无法撤销更改的内容。然后再运行一遍git status命令,你就会发现MainActivity.kt这个文件重新变回了未添加状态,此时就可以使用checkout命令将修改的内容进行撤销了。
2023-07-27 17:50:00 485
原创 Android调用摄像头拍照&从相册中选择图片
接下来构建了一个Intent对象,并将这个Intent的action指定为android.media.action.IMAGE_CAPTURE,再调用Intent的putExtra()方法指定图片的输出地址,这里填入刚刚得到的Uri对象,最后调用startActivityForResult()启动Activity。由于我们使用的是一个隐式Intent,系统会找出能够响应这个Intent的Activity去启动,这样照相机程序就会被打开,拍下的照片将会输出到output_image.jpg中。
2023-07-27 10:09:10 1117
原创 Android访问其他程序中的数据——以读取系统联系人为例
在apply函数中将联系人姓名和手机号逐个取出,联系人姓名这一列对应的常量是ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME,联系人手机号这一列对应的常量是ContactsContract.CommonDataKinds.Phone.NUMBER。将两个数据取出后进行拼接,并且在中间加上换行符,然后将拼接后的数据添加到ListView的数据源里,并通知刷新一下ListView,最后千万不要忘记将Cursor对象关闭。
2023-07-25 15:06:18 460
原创 Android 在程序运行时申请权限——以自动拨打电话为例
调用完requestPermissions()方法之后,系统会弹出一个权限申请的对话框,用户可以选择同意或拒绝我们的权限申请。这里我们只需要判断一下最后的授权结果:如果用户同意的话,就调用call()方法拨打电话;如果没有授权的话,则需要调用ActivityCompat.requestPermissions()方法向用户申请授权。然后我们使用方法的返回值和PackageManager.PERMISSION_GRANTED做比较,相等就说明用户已经授权,不等就表示用户没有授权。
2023-07-25 11:52:40 905
原创 到Android 10系统为止所有的危险权限
原则上,用户一旦同意了某个权限申请之后,同组的其他权限也会被系统自动授权。但是不要基于此规则来实现任何功能逻辑,因为Android系统随时有可能调整权限的分组。到Android 10系统为止所有的危险权限,一共是11组30个权限。
2023-07-25 11:44:09 407
原创 MyBatis基础知识
文章目录Mybatis简介MyBatis历史MyBatis特性MyBatis下载和其它持久化层技术对比搭建MyBatis开发环境创建maven工程创建MyBatis的核心配置文件创建mapper接口创建MyBatis的映射文件通过junit测试功能加入log4j日志功能核心配置文件详解默认的类型别名MyBatis的增删改查MyBatis获取参数值的两种方式(重点)单个字面量类型的参数多个字面量类型的参数map集合类型的参数实体类类型的参数使用@Param标识参数总结MyBatis的各种查询功能查询一个实体类
2023-07-18 14:27:47 2860
原创 Kotlin获取Fragment中的组件
以前以通过kotlin-android-extensions这个插件,可以直接使用布局中的控件id来操作view控件, 不用再findViewById。但是很可惜,在as升级到4.0之后便被抛弃了。左边和右边分别是两个不同的Fragment,左边的Fragment中右一个Button组件,目标是想要获取这个组件的id,以便进行将右边的Fragment更改成另一个Fragmeent的操作。可以看到,通过findViewById的方式来获取肯定是失败的。
2023-07-18 14:23:30 1162
原创 Leetcode 78.子集
给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。
2023-04-24 21:49:16 366 1
原创 Java HashMap getOrDefault() 方法
getOrDefault() 方法获取指定 key 对应对 value,如果找不到 key ,则返回设置的默认值。getOrDefault() 方法的语法为:hashmap.getOrDefault(Object key, V defaultValue)这个可以怎么用呢?举个例子:对字符串里面的字符分别进行计数,一般平常写的就是:public static Map<Character, Integer> countCharacter(String s){ Map<Ch
2022-05-17 19:47:24 336
原创 2022.04.20华为笔试
严正声明:转载请注明出处!!!总结一下做题的过程:刚开始以为第一题很简单,因为忽略了一个很重要的条件,再去读题发现没注意到那个要点,然后开始重来,发现下不了笔,整个人都傻了。整个一大惨败,前一个小时根本没思路,一个小时后发现可以分情况考虑,但是当时又遇到了一个问题,就是不知道怎么去分是否要退出的情况,做完第一题剩下10几分钟,直接交卷了,麻了……题目描述:小聪入职新公司,参加线上的新员工必备考试,考试共25题,依次是10个判断题(每题2分)、10个单选题(每题4分)和5个多选题(每题8分),总分100分
2022-04-21 09:05:36 1303 5
原创 位图BitMap
先来看一个问题:问:有20亿的用户,现在下昂要快速统计出有多少个用户在登录态中,要怎么设计?答:用MySQL数据库表存起来,当用户登录了设置为1,退出时改为0,然后统计出条件为1的数量即可。问:如果放在像MySQL这样的数据库中,用户基数很大,这样会很频繁地改动数据库,IO多,拖累系统性能。答:换成Redis,定义一个set类型的key叫做uid_login,用户登录了就往set中添加,退出了就删除这个uid元素。通过scard命令获取成员数量,即已登陆的uid数量。还能以O(1)的时间复杂度去判断
2022-04-10 14:20:22 565
原创 2022.03.30华为前端、后端算法第一题
严正声明:转载请注明出处!!!题目描述:一个业务芯片的容量为10G,可支持两种不同的业务类型A、B。芯片的约束如下:A业务容量为2.5G,一个芯片上最多可配置4路业务;B业务容量为10G,一个芯片上最多可配置1路业务;由于业务容量限制,配置了A业务后,该芯片就不能配置B业务;不能跨芯片占用资源,即业务只能配置在一块芯片上,不能占用一块芯片的容量,再占用另外芯片的容量;为了保证使用最少的芯片资源,业务配置时,按芯片编号从小到大顺序依次配置,并优先使用已占用的芯片。由于业务容
2022-03-30 21:31:22 1016
原创 2022.03.30华为前端、后端算法第二题
题目描述有一张m*n的地图,地图描述了起点和终点的位置,也描述了两点间分布的高山湖泊,高山湖泊挡住去路,需要绕道行走,请问从起点到终点的最短路径有几条,距离时多少?注意:走动路线只能上下左右,不能斜着走。输入假设是5*5的地图,那么四个角的坐标表示为(0, 0), (0, 4), (4, 4), (4, 0);起点是(0, 1),终点是(3, 3)高山湖泊的个数:1高山湖泊的位置(2, 2)输入表示:5 5——图的大小是5 50 1——起点坐标3 3——终点坐标1——湖泊个数2 3
2022-03-30 21:30:38 795
原创 验证手机号、邮箱、密码、验证码正则表达式
首先引入依赖,版本可以自己选择,这里以5.7.17版本为例https://mvnrepository.com/artifact/cn.hutool/hutool-all<!--hutool--><dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.7.17</vers
2022-03-28 10:16:50 2123
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人