自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

帅次的博客

三人行必有我师焉;择其善者而从之,其不善者而改之

  • 博客(217)
  • 资源 (8)
  • 收藏
  • 关注

原创 HarmonyOS ArkTS 构建布局

一、线性布局(Row、Column)二、层叠布局(StackLayout)三、弹性布局(Flex)四、相对布局(RelativeContainer)五、列表 (List)六、网格布局 (Grid)七、轮播 (Swiper)

2024-03-18 08:00:00 1243 2

原创 HarmonyOS ArkTS 基础组件

文本显示(Text/Span)按钮(Button)文本输入(TextInput/TextArea)单选框(Radio)切换按钮(Toggle)进度条(Progress)弹窗/自定义弹窗(AlertDialog/CustomDialog)视频播放(Video)

2024-03-18 08:00:00 1303

原创 Dev Studio 安装与使用

一、DevEco Studio 下载根据自己环境进行下载,下面就是常规的安装应用方式。二、DevEco Studio 诊断开发环境第一次打开会自动诊断,后面可通过右下方 help(帮助) 进入诊断开发环境。如下:这里很容易出现两个小问题:npm 仓库是否可访问报错,需要配置NPM代理。ohpm 是否设置正确报错。2.1 配置NPM代理1.第一次进入:如果报错可通过提示直接进入设置页面 2.通过项目进入设置页面:npm 注册表:配置npm仓的地址信息。

2024-03-15 15:00:00 2247 1

原创 HarmonyOS ArkTS 开发基础/语言

ArkUI 为HarmonyOS应用的UI开发提供了完整的基础设施,包括简洁的UI语法、丰富的UI功能(组件、布局、动画以及交互事件),以及实时界面预览工具等,可以支持开发者进行可视化界面开发。应用性能:如下图所示,两种开发范式的UI后端引擎和语言运行时是共用的,但是相比类Web开发范式,声明式开发范式无需JS框架进行页面DOM管理,渲染更新链路更为精简,占用内存更少,应用性能更佳。:后端引擎提供了兼容不同开发范式的UI渲染管线,提供多种基础组件、布局计算、动效、交互事件,提供了状态管理和绘制能力。

2024-03-15 15:00:00 1038

原创 JavaScript 入门手册(一)

中的 JavaScript 函数一、JavaScript 是什么?JavaScript 是 web 开发人员必须学习的 3 门语言中的一门:HTML 定义了网页的内容CSS 美化了网页的仰视JavaScript 控制了网页的行为1.1 JavaScript 介绍JavaScript(简称“JS”)是一种轻量级的面向对象的编程语言,既能用在浏览器中控制页面交互,也能用在服务器端作为网站后台(借助 Node.js),因此 JavaScript 是一种全栈式的编程语言。

2024-03-07 06:30:00 843

原创 JavaScript 入门手册(二)

1.基本数据类型 (Primitive Data Types):字符串 (String): 用于表示文本数据,例如:"hello", 'world'.数字 (Number): 包括整数和浮点数,例如:42, 3.14.布尔值 (Boolean): 表示真或假,值为 true 或 false.空值 (Null): 表示空或不存在的值,只有一个值 null.未定义 (Undefined): 表示未赋值的变量,只有一个值 undefined.

2024-03-07 06:30:00 951

原创 CSS 入门手册(二)

注: 在 OS X Lion ( Mac 系统) 系统上,滚动条默认是隐藏的,使用的时候才会显示 (设置 "overflow:scroll" 也是一样的)。使用 margin-left 属性,并设置为 -100px。这个数字计算来源是使用宽度的一半来居中对齐,即: width/2 (200/2 = 100)。top:-5px 同于定位在容器元素的中间。使用数字 5 因为提示文本的顶部和底部的内边距(padding)是 5px。border:th和th元素的边框(粗细 线条 颜色)。按百分比设置表格宽度。

2024-02-27 06:45:00 934

原创 CSS 入门手册(一)

把写好的样式放在同级目录的另一个文件夹里,使用时只需要写一个link标签引入在编辑器里即可,他真正意义上做到了结构与样式完全分离。font-size 属性设置文本的大小,字体大小的值可以是绝对或相对的大小。adding(填充)是一个简写属性,定义元素边框与元素内容之间的空间,即上下左右的内边距。当元素的 padding(填充)内边距被清除时,所释放的区域将会受到元素背景颜色的填充。元素的默认字体大小的是百分比。margin 可以单独改变元素的上,下,左,右边距,也可以一次改变所有的属性。

2024-02-27 06:15:00 1708

原创 HTML 入门手册(二)

10-表单;11-input标签;12-button标签;13-下拉框:单选下拉框、多选下拉框、下拉框组;14-多行文本textarea标签;15-多媒体:音频(audio)、视频(video)。

2024-01-22 07:00:00 1065

原创 HTML 入门手册(一)

1-基础语法;2-标题和水平线;3-段落和换行;4-列表;5-div和span;6-格式化标签;7-超链接(a标签);8-图片;9-表格:高度、宽度和边框、标题、合并单元格、HTML表格头部、主体、页脚

2024-01-22 06:00:00 1181

原创 adb 常用命令汇总

1、显示已连接的设备列表2、进入设备3、安装 APK 文件到设备4、卸载指定包名的应用5、从设备中复制文件到本地6、将本地文件复制到设备7、查看设备日志信息8、重启设备9、截取设备屏幕截图10、屏幕分辨率11、屏幕密度12、显示设备的总内存、空闲内存、已用内存等信息13、应用的内存使用情况14、详细的内存信息15、查看内存信息16、查看电池信息17查看CPU信息18、单独查看属性19、查看安装app的包名21、查看将要启动或退出app的包名22、关闭软件(根据包名)25、查看内存

2024-01-15 06:00:00 2548 2

原创 Android getApplication()、getApplicationContext的区别

在 Activity 调用 getApplicationContext()返回的是当前Activity或Fragment所属的Application对象。在 Activity 调用 getApplication()通常来说,如果需要访问全局应用程序级别的变量或配置,可以使用。是两种获取应用程序上下文的方法,但它们有一些细微的区别。如果需要一个通用的应用程序级别的上下文,可以使用。四、主要的区别(Activity调用该方法)返回的是整个应用程序级别的上下文。,特别是在长时间运行的异步任务中。

2024-01-08 06:00:00 1265

原创 TCP、UDP区别

此外,Android还提供了一些库和框架,如Android的网络库(例如OkHttp、Retrofit)可以简化TCP或UDP的网络通信过程,同时提供了更高级的功能和可定制性。若需要更低的延迟和更快的速度,且能够容忍数据丢失,则可以选择UDP。在Android开发中,使用TCP和UDP的基本原理与一般网络通信协议相同,但在Android平台上的实现可能涉及一些特定的操作和库。在Android中使用UDP同样需要创建Socket,但UDP是无连接的,因此在发送数据时不需要建立持久连接。

2024-01-08 05:30:00 806

原创 Java 深入理解 AQS 和 CAS 原理

理解了 AQS 的设计思路,接下来我们就可以通过自定义 AQS 来实现自己的同步实现机制。代码中的 MyLock 就是一个最简单的独占锁,通过使用 MyLock 也能实现同 synchronized 和 ReentrantLock 相同的功能。比如如下代码:最终打印的 count 值为 20000,说明两个线程之间是线程安全的同步操作。

2024-01-04 14:03:26 1030

原创 Java Synchronized 和 ReentrantLock

关键字相信每一位 Java 工程师都不会陌生。而 ReentrantLock 作为大神 Doug Lea 编写的 concurrent 包中的重要一员,也在众多项目中发挥重要功能。因为这两者实在是太重要,所以专门使用一课时的内容来对它们做一个详细的比较。后续两课时将会着重介绍它们各自的实现细节与原理。这课时我们主要学习了 Java 中两个实现同步的方式 synchronized 和 ReentrantLock。

2024-01-04 06:00:00 929

原创 Android BroadcastReceiver和EventBus区别

1.广播是四大组件之一,EventBus是开源框架;2. 广播不能直接执行耗时操作,如果超过10秒,会导致 ANR;3.广播非常消耗资源,而EventBus非常轻量;4.EventBus切换线程非常方便,只需要修改下注解就行了;5.广播可以跨进程,而EventBus不可以。

2024-01-03 06:00:00 386

原创 Java 线程池深入理解

线程池是一把双刃剑,使用得当会使代码如虎添翼;但是使用不当将会造成重大性灾难。而剑柄是握在开发者手中,只有理解线程池的运行原理,熟知它的工作机制与使用场景,才会使这把双刃剑发挥更好的作用。

2023-12-21 15:08:19 851

原创 Android BottomSheetBehavior(底部弹窗)

与普通的对话框不同,底部工作表对话框以一种半透明的方式在底部显示,用户可以通过向上滑动的手势将其展开或关闭。底部工作表对话框从屏幕底部弹出,提供一种非常流行的用户界面模式,用于显示与当前操作或内容相关的选项、操作或信息。它提供了一个简便的方法,在底部以对话框的形式展示内容。,你可以在你的 Android 应用中实现一个基本的底部工作表,并控制它的显示、隐藏以及与用户交互时的行为和动画效果。: 底部对话框在不同屏幕尺寸上可能会有不同的显示效果,因此确保内容在不同尺寸和密度的屏幕上均能正常显示和操作。

2023-12-14 06:00:00 639

原创 Android CoordinatorLayout

作为 Material Design 的一部分,CoordinatorLayout 提供了一些默认的 Behavior,使得实现 Material Design 的交互行为更加容易。用于协调管理其子视图之间的交互行为。: 除了默认提供的行为外,你可以创建自定义的 Behavior,以满足特定的布局需求或实现定制的交互效果。: 它可以管理嵌套滚动操作,允许子视图在滚动时进行联动,比如标题栏的隐藏、视图的展开等。来管理子视图的交互,协调者能够响应子视图的行为并调整其他相关视图的布局和行为。

2023-12-12 06:00:00 98

原创 Android 滑动菜单(DrawerLayout + NavigationView )

1.主内容视图一定要是DrawerLayout的第一个子视图且宽度和高度需要match_parent。2.侧滑菜单必须添加android:layout_gravity属性,推荐使用 start|end,不推荐使用left|right。3.侧滑视图的宽度以dp为单位,官方建议一般小于320(为了总能看到一些主内容视图)。4.设置侧滑事件:mDrawerLayout.setDrawerListener(DrawerLayout.DrawerListener);

2023-12-11 06:00:00 382

原创 Android Chips(标签)

一、流式布局标签发展历程第一阶段:实现这种界面的时候,基本都是自定义一个控件,然后在Java代码中动态的 添加 一个个的TextView,还需要计算布局宽度/高度,进行换行等等处理,蛮复杂的;第二阶段:使用 RecyclerView,我们实现这种界面就比较方便了;第三阶段:谷歌为我们提供了 Chip、ChipGroup、ChipDrawable,有了这三者,我们实现这种界面就更加方便了。二、类型及使用Chip的所有类型都是可点击的,根据选中效果有四种类型。

2023-12-06 06:00:00 243

原创 Android Text fieids

一、Text fieids一、Text fieids允许用户在 UI 中输入文本,。在 Text fieids 没出来(我不知道)前,想实现这个功能就需要自己自定义控件来实现这个功能。几年前做个上面这种样式(filled 填充型)。需要多个控件组合 + 动画才能实现,而且需要处理的逻辑也很多。了解到 Text fieids 那么你仅需即可实现之前的 UI 效果,是不是美滋滋?一起来研究一下,现在用不上指不定啥时候就用上了。

2023-12-05 06:00:00 944

原创 Android CardView基础使用

一、CardView顾名思义,就是卡片布局。现在卡片布局越来越普及了,以前都是各种shape来实现卡片效果,现在可以直接用控件来实现,是不是美滋滋?CardView实用性还是比较强的,一起来试试吧?1.1 导入material库要求SDK大于等于34,如果不打算兼容那么高的,建议降低至1.8.0,不影响CardView的使用。CardView继承自FrameLayout,可以让我们使用类似卡片布局来显示一致性效果的内容。同时卡片还可以包含圆角和阴影效果。1.2 属性。

2023-12-04 06:00:00 1108

原创 Android 14模拟器闪退

java.lang.SecurityException: Writable dex file ‘/data/data/xxx/classes3.dex‘ is not allowed.

2023-11-30 06:00:00 566

原创 Android Studio 模拟器设置独立窗口

Android Studio -> Preferences(Settings) -> Tools-> Emulator ->取消勾选 Launch in a tool window -> 点击右下角的 OK 按钮 -> 重启 Android Studio。模拟器在窗口内部运行。

2023-11-29 06:00:00 707

原创 An issue was found when checking AAR metadata

Dependency androidx.activity:activity:1.8.0 必须34,那我不用就完事啦。app/build.gradle中将 compileSdk 和 targetSdk 升至 34 即可。首先找到androidx.activity:activity:1.8.0在哪?从这段信息告诉我们,升级SDK这个是必须的,除非你不用。毕竟项目不大牵扯不是很很大,而且新内容是肯定要兼容的,嘿嘿嘿。具体采取哪种方案具体问题具体分析了,个人采用了。

2023-11-24 06:00:00 3953

原创 No matching variant of com.android.tools.build:gradle:7.4.2 was found.

No matching variant of com.android.tools.build:gradle:7.4.2 was found. The consumer was configured to find a runtime of a library compatible with Java 8, packaged as a jar, and its dependencies declared externally, as well as attribute 'org.gradle.plugin.a

2023-11-23 06:00:00 1602

原创 Google Play 搜索不到应用

请注意,为确保提供最佳的用户体验,我们会限制 Google Play 显示的搜索结果数量。如果你的应用在特定字词的搜索结果中排名过低,则不会显示在搜索结果中。例如,如果用户搜索“颜色游戏”,则系统难以分辨用户是在搜索名为“颜色游戏”的应用,还是关于颜色的游戏。这些应用宣传广告可以在许多 Google 广告网络(包括 Google 搜索、YouTube 以及 Google 展示广告网络中的网站和应用)中展示。首先,请确保你的应用在 Google Play 商店上已经成功上架,并且通过了审核。

2023-11-22 07:30:00 2246

原创 Android 电量优化概览

一、三大耗电模块一、三大耗电模块1.显示2.网络3.CPU二、显示避免时常唤醒屏幕不要阻止手机休眠过度绘制2.1 Overdraw简介。

2023-11-21 06:00:00 555

原创 Android 屏幕适配

由于Android系统的开放性,OEM厂商、运营商都可以对Android进行定制,于是导致运行 Android 的设备多种多样,它们有着不同的屏幕尺寸和像素密度。尽管系统可通过基本的缩放和调整大小功能使界面适应不同屏幕,但你应做出进一步优化,以确保界面能够在各类屏幕上美观地呈现。

2023-11-18 06:00:00 498

原创 Android 透明度设置

Android中的颜色值通常遵循RGB/ARGB标准,使用时通常以“#”字符开头,以16进制表示。Android中的颜色值一般格式是:#AARRGGBB。透明度分为256个等级,即 0~255,00表示完全透明,FF开始表示完全不透明注:透明度 0(透明) –> 255(不透明)16进制 00 (透明)–> FF(不透明)比如:50%透明度, 50%也就是256的一半即128,因为是从0开始算的,所以是 127,转换成16进制就是 7F。

2023-11-15 02:30:00 1667

原创 Android 实现资源国际化(多语言)

Android国际化(多语言)是一种开发技术,旨在使Android应用程序能够在不同语言和文化环境下运行,并为用户提供本地化的体验。这是为了确保应用程序在全球范围内都能够被理解和使用,而不仅仅局限于特定地区或语言的用户。通过遵循一下命名规则,Android系统能够在用户更改语言和地区设置时**自动选择正确的资源文件**,以提供本地化的用户体验。

2023-10-24 02:30:00 2956 1

原创 Android ChatCPT集成

这只是个简单的Demo,接入起来十分简单。但是具体商用还是要结合自己的业务场景来做,这个仅供参考。按照上面返回的JSOn生成即可,提取choices.message.content即可。集成好网络框架(默认使用Retrofit)2.3 上行参数(ChatGPTUPBodyBean)创建API Keys。1.以Body的形式传递数据。

2023-09-05 08:00:00 329

原创 Google Cloud 服务账号 + 服务密钥

The current user has insufficient permissions to perform the requested operation

2023-08-21 08:00:00 455

原创 Facebook 应用未启用:这款应用目前无法使用,应用开发者已得知这个问题。

Facebook 应用未启用:这款应用目前无法使用,应用开发者已得知这个问题。com.facebook.GraphResponse:{HttpStatus:400,errorCode:190,subErrorCode:-1,errorType:OAuthException,errorMessage:Errorvalidatingapplication.Applicationhasbeendeleted.}

2023-08-18 08:00:00 6052 12

原创 Android 控件截图保存本地并分享

截图当前页面某个控件的内容,并且保存在本地,可分享。

2023-08-15 08:00:00 753

原创 Android 渐变背景色

单纯的颜色背景已经不能够满足UI大佬们的发挥,渐变色背景无疑成了一个炫技的方向。现在越来越多的地方用到了渐变色,如Logo/背景色/按钮等。

2023-06-28 07:00:00 4856

原创 Flutter Dart类

Dart是一种面向对象的语言,具有类和基于mixin的继承。每个对象都是一个类的实例,所有的类都是Object的子类。基于mixin的继承意味着,尽管每个类(除了Object)都只有一个超类,但类主体可以在多个类层次结构中重用。

2023-06-26 07:00:00 630

原创 Flutter Dart函数(方法)异常

Dart 是一个真正的面向对象语言,方法也是对象并且具有一种 类型 Function。 这意味着,方法可以赋值给变量,也可以当做其他方法的参数。

2023-06-24 07:00:00 759

原创 Flutter Dart操作符

Dart操作符: 算术运算符 关系运算符 类型判定运算符 赋值运算符 逻辑运算符 条件运算符 级联符号运算符 安全操作符

2023-06-23 07:00:00 765

HTML 入门资料Demo

HTML 入门手册(一):https://shuaici.blog.csdn.net/article/details/135680716 HTML 入门手册(二):https://shuaici.blog.csdn.net/article/details/135698613 HTML 英文全称 " HyperText Mark-up Language " , 中文名称是 " 超文本标记语言 " 。是一种用于创建网页的标准标记语言。它使用一系列标签来描述网页内容的结构和样式,包括段落、标题、链接、图片、列表等。HTML文档是由HTML元素组成的,这些元素可以嵌套在其他元素中,从而构建出复杂的网页结构。 HTML5是HTML的最新版本,相比之前的版本,它引入了许多新的元素和API,使得网页可以更好地支持多媒体内容、图形和动画等。此外,HTML5还提供了更多的表单控件和数据绑定功能,使得用户可以更方便地与网页进行交互。

2024-01-23

Android MVC-MVP-MVVM-Demo.zip

MVC-MVP-MVVM实例

2021-08-17

Android面试题汇总.zip

Android面试题汇总,总有一款适合你。

2021-08-05

登录注册+标准体重计算器

大学生结业作业、简单小项目练习。 涉及控件:TextView、EditText、Button、ListView,SP数据存储。内部备注详细。

2021-07-03

Android-标准体重计算器

适合人群:初学者 里面涉及控件:TextView、EditText、RadioGroup、RadioButton、Button;代码涉及Activity跳转

2021-07-01

BroadcastReceiverDemo.zip

使用人群:BroadcastReceiver初学者。 里面涉及BroadcastReceiver的静态注册(无序广播)、动态注册(无序广播)、有序广播。 项目对应:https://shuaici.blog.csdn.net/article/details/118337894

2021-06-29

ContentProviderDemo.zip

适合人群:ContentProvider初学者。 ContentProvider的简单使用,和其他应用调用ContentProvider的实例。 项目对应:https://shuaici.blog.csdn.net/article/details/118222691

2021-06-25

SQLite用户信息的增删改查

Android的数据库存储方式—SQLite的使用方法,包括:SQLite用到了哪些SQL语法,如何使用数据库管理器操纵SQLite,如何使用数据库帮助器简化数据库操作等,以及如何利用SQLite改进登录页面的记住密码功能。 适用人群:初学者

2021-06-22

TimePickerDemo.zip

学习是劳动,是充满思想的劳动。

2016-01-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除