简介在Android 3.0(11)之后,Android提供了setSystemUiVisibility方法,这个方法的作用是可以通过一个flag配置更改状态栏或其他屏幕/窗口装饰的可见性,主要的作用是暂时隐藏掉系统栏的一些UI,让用户能够将注意力更多地集中在应用程序内容上。注意,在使用的时候,有一些flag不一定是API 11 就支持的。大部分都是在API 16的时候增加上的。 这种方式设置显示
Struts2注解 1 Struts2注解的作用使用注解可以用来替换struts.xml配置文件!!! 2 导包 必须导入struts2-convention-plugin-2.3.15.jar包,它在struts2安装包下lib目录中。 3 通过配置文件学习对应的注解@Action来代替元素! l String value():指定访问路径; l Result[] results(
添加apt添加仓储buildscript { repositories { mavenCentral() } dependencies { 345678添加aptap
原创
2022-09-07 10:29:17
210阅读
Google向Android的java环境中添加了自己的GUI(GraphicalUser Interface)框架,以下称为Android GUI框架。这个框架跟java其他的GUI框架很类似,都是单线程、事件驱动、嵌套与继承机制下的窗口组件类库。我们先前已知的java GUI框架有:AWT,SWING,SWT,J2ME等。所以,如果你熟悉这些框架,那么也应该对An
转载
2024-09-02 09:35:17
19阅读
注意:本人非专业翻译人员,编写此博客只是为了自学使用,如有疑问,请参考官方文档。Android应用程序是用Java编程语言编写的。Android SDK工具将您的代码与数据和资源文件一起编译成APK——一个Android软件包,它是一个.apk后缀的归档文件。一个APK文件包含Android应用程序的所有内容,它是Android设备用于安装该应用程序的文件。一旦安装在设备上,每个Android应用
Dragger模块Dragger模块是项目的一个base模块,用于实现对所挂接View的drag位移.这个模块设计的理念很好,体现了V 和 C 完
原创
2023-05-24 00:52:05
36阅读
这篇文章接着上一篇SystemUI之启动未分析完的SystemUI插件化机制相关的代码SystemUI插件SystemUI插件提供了一种快速创建SystemUI功能原型的简便方法,可以在运行时更改SystemUI的行为。 通过创建插件实现SysUI中使用的一组基本接口来完成,然后可以比当前更快的速度迭代由该接口控制的部分代码。简单来说就是可以快速替换SystemUI原有的组件,也叫hook,我们就
转载
2024-03-20 10:57:18
351阅读
# Android Dragger 和 Dragger2 的区别
在 Android 开发中,拖拽功能是一个常用的用户交互模式,它使得用户可以更直观地与界面进行交互。Android 提供了多个用于处理拖拽的库,其中最著名的就是 Dragger 和 Dragger2。这两者之间有一些显著的区别,本文将详细探讨这些区别,并提供一些代码示例。
## Dragger 和 Dragger2 简介
##
原创
2024-10-29 04:50:07
81阅读
Android基础知识android os和app的关系:android os是一个多用户的Linux操作系统,而不用app对应不同的用户。android os为每一个app分配一个唯一的User ID,系统为app中所有文件赋予权限,保证只有该ID的app能够访问。每个进程启动一个单独的VM,因此app间独立运行当app中任意组件被调用时,android启动该app的进程,当任务完成后,或者os
转载
2024-03-03 15:33:52
40阅读
一、ASAN 简介ASAN(AddressSanitizer 的缩写)是一款面向C/C++语言的内存错误问题检查工具,可以检测如下内存问题:使用已释放内存(野指针)堆内存越界(读写)栈内存越界(读写)全局变量越界(读写)函数返回局部变量内存泄漏ASAN工具主要由两部分组成:运行时库 运行时库(libasan.so.x)会接管 malloc 和 free 函数。malloc执行完后,已分配内存的前后
转载
2024-09-26 19:48:16
104阅读
## Android Dragger 初始化:在移动应用中应用拖动操作
在现代移动应用中,用户交互体验的提升是至关重要的,而拖动操作(dragging)便是增强用户操作的一种方式。在Android中,`Dragger` 类是处理拖动事件的工具,能够实现多个UI组件之间的交互。本文将对其初始化和使用进行详细讲解,并提供代码示例。
### 1. 什么是 Dragger?
`Dragger` 是一
原创
2024-08-15 08:05:39
64阅读
# Android Dragger2实现流程
## 1. 概述
Drager2是一个Android依赖注入框架,它可以帮助我们将对象之间的依赖关系解耦,提高代码的可维护性和可测试性。在Android开发中,使用Drager2可以减少繁琐的手动依赖注入操作,提高开发效率。
## 2. 实现流程
下面是实现Android Dragger2的基本步骤:
| 步骤 | 操作 |
| ---- |
原创
2023-07-16 11:51:24
148阅读
Gradle的使用技巧定义一些统一的编译变量当我们在一个AS的Project里面,有挺多的module和library的时候,我们需要统一各个模块的编译版本,sdk版本等,我们可以通过gradle设置,这样子设置的好处就是只要我们有修改需求,那么只是修改一个地方就好了,例子如下: 我们在项目目录下的gradle.properties文件中,添加如下代码SDK_COMPILE_VSERION=23
也可以进入文章开头的专辑查看。为什么我一直推荐使用谷歌浏览器呢,某些浏览器会自作主张封杀某些域名,还经常弹各种广告,当然更主要的是方便我使用谷歌搜索。而且谷歌浏览器可以直接在 https://www.google.cn/chrome/ 下载,还有很多谷歌产品在国内都可以直接打开,可以看看我之前的文章那些在国内还能使用的谷歌产品最新版83.0.4103.61还上线了标签页分组功能,如果你经常开很多标
3.1.3 第三点是应用场景上当你需要执行耗时的网络,或者这种文件数据的查询,以及其它阻塞 UI 线程的时候,都应该使用工作线程,也就是开启一个子线程的方式。这样才能保证 UI 线程不被占用,而影响用户体验。而 service 来说,我们经常需要长时间在后台运行,而且不需要进行交互的情况下才会使用到服务,比如说,我们在后台播放音乐,开启天气预报的统计,还有一些数据的统计等等。3.2 为什么要用 S
在gradle添加依赖compile 'com.google.dagger:dagger:2.11-rc2' annotationProcessor 'com.google.dagger:dagger-compiler:2.11-rc2' 注解用法@ModuleModules类里面的方法专门提供依赖,所以我们定义一个类,用@Module注解,这样Dagger在构造类的实例的时候,就
原创
精选
2023-03-08 00:52:48
263阅读
Error:Execution failed for task ':app:compileDebugJavaWithJavac'.> java.lang.IllegalStateException: Found multiple @Inject constru
原创
2022-09-21 11:47:05
31阅读
Error:Execution failed for task ':app:compileDebugJavaWithJavac'.> java.lang.IllegalStateException: Found multiple @Inject constructors: [Ca...
原创
2023-06-03 07:31:32
263阅读
SystemUI模块 StatusBar:通知消息提示和状态展现 NavigationBar:返回,HOME,Recent KeyGuard:锁屏模块可以看做单独的应用(包括息屏与亮屏),提供基本的手机个人隐私保护 Recents:近期应用管理,以堆叠栈的
目录一、简介二、SystemUI的架构三、SystemUI的主要组件四、SystemUI的主要功能五、SystemUI的自定义和定制六、SystemUI的性能优化一、简介 SystemUI是Android操作系统的一个关键组件,主要负责管理和提供用户界面的核心元素,如状态栏、导航栏和锁屏界面等。从下面两点
转载
2023-08-18 15:36:37
211阅读