自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

FranzLiszt的博客

大道如青天,我独不得出

  • 博客(151)
  • 资源 (4)
  • 收藏
  • 关注

原创 Android——一个简单的音乐APP(二)

一个简单的音乐APP(第一篇)音乐下载音乐离线播放mLog视频播放个人信息音乐信息删除本地音乐基于第一版也稍稍有些变动,废弃了二维码登录功能(依旧能登录,但有少部分功能无法联动使用),部分代码结构有变动。

2022-10-20 23:13:00 1795 9

原创 Android——一个简单的音乐APP

Github上有位牛人将网易云音乐的接口进行部署和总结,然后我将它的仓库部署到我的云服务器上,因为他的是需要翻墙的,此项目所有接口信息均与网易云音乐关联。由于此项目用于熟悉kotlin语言,所以绝大部分代码均使用kotlin编写;目前EasyMusic为第一版,功能上还有欠缺,但主流程已经基本完成;

2022-09-23 19:28:47 4594 17

原创 Android——一个简单的闹钟APP

一个简单的闹钟效果视频闹钟子项子项布局效果图闹钟适配器类闹钟初始数据侧滑删除闹钟子项添加依赖布局设置实现侧滑回调方法绑定RecyclerView删除子项新增闹钟子项序列化实体类定义实体类,并实现序列化取出序列化实体类对象TimePicker自定义TimePicker文字大小及颜色获取时间数据返回时间数据存储数据取出数据子项添加自定义Switch样式Switch效果如图创建`thumb`和`track`样式thumb样式选中状态默认状态track样式选中状态默认状态闹钟提醒服务Service开始服务暂停服务单

2021-11-18 22:03:22 38486 77

原创 Android Compose 一个音视频APP——Magic Music Player

此项目基于网易云API,使用Compose UI编写而成,项目整体采用MVVM架构,主要实现主题切换(适配深色模式)、音视频资源播放(Media3-Exoplayer)(其中视频播放对Exoplayer进行了自定义样式、竖屏和横屏切换等处理)、前台服务(通知栏)、歌曲下载、资源评论、歌曲解析、歌词逐行匹配等功能

2024-02-06 17:14:56 2309 5

原创 Android Compose——ScrollableTabRow和LazyColumn同步滑动

我们需要一种方法来反映一个状态与另一个状态的状态,这意味着无论当前所选索引的值是多少,它都应该反映列表状态中的正确位置,反之亦然,无论列表状态的当前位置是什么,它都反映正确的索引。

2024-01-06 17:59:35 749

原创 解决在Android Compose中点击空白处收回软键盘

在最外层的组件中通过监听点击事件,执行键盘的关闭操作。监听单击点击事件,并清除当前聚焦组件的焦点。完成对焦点请求和焦点变化的监听处理。对象,对软键盘进行显示与关闭操作。

2023-12-30 19:06:51 481

原创 Kotlin基础语法

在Kotlin中函数默认访问类型为Public,此处我声明为privatefun为声明函数关键字add为函数名为函数形参形参列表后面有一个:Int,代表函数返回Int。

2023-12-29 18:16:23 1354 3

原创 将网易云API通过宝塔面板布署到云服务器

请根据实际场景设置授权对象的CIDR,另外,0.0.0.0/0或者掩码为0,代表允许或拒绝所有IP的访问,设置时请务必谨慎。当我们添加Node项目的时候,一直提示我们未安装Nginx,可是我们在一开始默认推荐的LNMP已经安装过了,随即我们可以通过观看错误日志,进行原因分析。若未进行学生认证的,需要通过支付宝辅助完成学生认证,完成学生认证后,可购买对应云服务器(支付0元),操作系统可选择自己喜欢的,我选择的操作系统版本是。登陆完成之后,成功进入宝塔面板,可以选择推荐的LNMP进行安装,可以省去很多麻烦。

2023-12-28 10:28:44 879 2

原创 解决阿里云远程连接yum无法安装问题(Ubuntu 22.04)

随即出现如下提示便是成功了,然后使用其提供的外网面板地址和账号密码登陆即可。然后重新尝试安装yum,执行下列一步,我的yum就安装成功了。注:因为使用的是vim打开,下列提供一些简便快捷键操作。然后使用如下脚本安装宝塔面板即可,耐心等待几分钟即可。输入安装yum命令之后,出现python版本问题。使用下列命令安装宝塔面板(Ubuntu版本)打开文件:使用如下命令打开文件。输入如下命令在此尝试安装yum。随即出现yum没有安装的错误。使用如下命令安装yum。出现如下则代表安装成功。然后验证是否安装成功。

2023-12-27 11:46:33 1620 2

原创 浅析C指针

C语言中的指针实质是指向某一对象的内存地址,对象可以是变量、常量、数组、函数等。不同类型的指针大小是不变的,例如在64位操作系统中,指针大小占8个字节。可以对地址进行前移、后移运算;可以通过运算符获取内存地址保存的数据。操作系统大小(字节)备注62位8int*、float*、char*等指针大小均为8字节32位4int*、float*、char*等指针大小均为4字节。

2023-08-26 12:22:55 242

原创 C++ STL篇

STL大体分为六大组件:容器、算法、迭代器、仿函数、适配器、空间配置器- 容器:各种数据结构,如:vector、list、deque、set、map等,用来存放数据- 算法:各种常用算法,如:sort、find、copy、foreach等- 迭代器:扮演了容器和算法之间的胶合剂- 仿函数:行为类似函数,可作为算法的某种策略- 适配器:一种用来修饰容器、仿函数或迭代器接口的内容- 空间配置器:负责空间的配置与管理

2023-05-24 20:34:39 998 2

原创 C++ 指针篇

32位操作系统指针占4个字节;64位操作系统占8个字节。空指针和野指针都不是自主申请的空间,访问会出现异常。语法: 类型* const p;语法:const 类型* p;const修饰指针:常量指针。const修饰常量:指针常量。const修饰指针和常量。结构体的三种初始方式。

2023-05-12 12:59:15 207 1

原创 C++ 面向对象篇

C++程序在执行时,将内存大致分为四个区域;- 代码区:存放函数体的二进制代码,操作由系统管理- 全局区:存放全局变量和静态变量以及常量- 栈区:由编译器自动分配释放,存放函数的参数值(形参),局部变量等- 堆区:由程序员分配和释放,若程序员不手动释放,系统在程序结束时自动回收

2023-05-12 12:54:23 458 3

原创 Android Compose——一个简单的Bilibili APP

此Demo采用Android Compose声明式UI编写而成,主体采用MVVM设计框架,Demo涉及到的主要技术包括:Flow、Coroutines、Retrofit、Okhttp、Hilt以及适配了深色模式等;主要数据来源于Bilibili API。

2023-03-05 15:58:58 3583 3

原创 Android Compose——Paging3的使用以及利用泛型进行封装

本Demo采用Hilt+Retrofit+Paging3完成,主要为了演示paging3分页功能的使用

2023-01-13 19:01:10 1266 7

原创 Android Compose——一个简单的新闻APP

使用Compose完成的一个简单Demo,改自Google官方用例

2023-01-13 17:40:15 1596 2

原创 Android Jetpack Compose——一个简单的笔记APP

此项目功能较为简单,基本就是使用Room数据库实现CRUD,但是此项目实现了一个干净的架构,项目使用MVVM架构进行设计,每一个模块的职责划分清晰,功能明确,没有冗余的代码。其中涉及了Hilt依赖注入,对于数据库的的操作,使用接口实现类进行获取,然后将实现类的CRUD操作封装在一个数据类中,最后通过Hilt自动注入依赖,供外部调用。此项目原创来源于YouTube的一位创作者[Philipp Lackner]

2023-01-05 15:44:59 1090 3

原创 Android 浅析Hilt依赖注入

首先,某个类的成员变量称为依赖,如若此变量想要实例化引用其类的方法,可以通过构造函数传参或者通过某个方法获取对象,此等通过外部方法获取对象实例的称为依赖注入;而依赖注入又可以简单分为`手动注入`和`自动注入`两种方式;`Hilt`就是基于Dagger进行`场景化优化`的一个依赖注入库,Hilt是Google专门为Android平台打造的一个依赖注入库,在使用上极大程度进行啦简化(与dagger相比)

2023-01-04 22:07:18 845 2

原创 Android Jetpack Compose——一个简单的微信界面

此Demo用于熟悉Jetpack Compose,故仿造微信写了部分界面

2023-01-01 00:03:47 3170 7

原创 Flutter For App——一个简单的豆瓣APP

由于豆瓣接口现在很多都有了限制,此项目使用的是Github某人整理的,能用的总共有四个接口,其中搜索相关的两个接口,30s内只允许访问一次,连续访问会出现`code:429,访问频繁异常`,剩余两个接口没有限制;实现的功能包括: Top250榜单、电影详情、电影收藏列表、模糊搜索、搜索记录、搜索列表、清空搜索记录、侧滑删除收藏影片

2022-12-19 16:35:42 2180 4

原创 Flutter——Dio网络库的使用与封装

Flutter——Dio网络库的使用与封装

2022-12-19 13:35:42 1431 1

原创 Flutter——SQLite数据库的使用与封装

Flutter——SQLite数据库的使用与封装

2022-12-19 13:27:48 1282

原创 Android Jetpack Compose——一个简单的聊天界面

目前声明式UI已经成为前端开发趋势,除了一开始的跨端开发React,Flutter等以及Web支持外,后续Android和IOS平台也相继推出声明式开发,Android通过Jetpack Compose配合Kotlin强大的语言特性进行开发,彻底摆脱啦命令式使用XML文件进行UI布局

2022-11-29 15:31:31 1671 2

原创 Dart基础语法

main(){}3.导入文件中的函数与当前文件函数重名可以使用as取一个别名main(){}}4.当只想引用部分函数时main(){}}5.当想被引用文件的函数不需要时//则文件中的sum函数不能被调用。

2022-11-25 21:58:36 879

原创 Flutter For Web——一个简单的图片素材网站

一个简单的图片素材网站,通过SharedPreferences实现了注册和登录,通过使用Dio库完成网络请求,通过原始html调用浏览器完成图片下载功能

2022-11-23 20:19:39 779 3

原创 Flutter for App——一个简单的BMI计算APP

包括啦上述初始化的控制权和焦点节点,并添加了一个末尾Icon,当输入内容不为空时,显示清空按钮,并对点击事件做清空处理,在。Web和APP有一些地方不一样,例如背景颜色,web需要单独进行设立,如下所示。没有使用系统标题栏,通过将Text文本放到中间,作为标题使用。为体重和升高焦点节点进行事件监听,并改变状态标志位。身高和体重输入行一致,此处以身高为例;进行布局,可输入自己需要的内容组件。但布局进行包裹,并设置背景颜色。,并对点击事件做计算处理。并对表单进行监听,并通过。进行垂直排列,其中使用。

2022-11-22 18:25:32 674 3

原创 Flutter——自适应设计

通过`LayoutBuilder`组件构造两个布局,通过获取当前屏幕宽度大小,如果小于限定值则采用窄布局,反之,采用宽布局

2022-11-08 17:13:01 1579 4

原创 Flutter——路由和导航

方法顾名思义,在栈中使用频繁,将下一个页面添加到栈中,栈顶为下一个页面,但之前的页面只是在栈底,并未被销毁。进行点击事件监听,然后将对应的Item的实体类数据作为参数传给下一个页面。在详情页中声明商品实体类成员,然后在构造方法中进行赋值,布局通过。此处只是一个简单的例子,数据都为静态数据,只为做一个展示。方法将当前栈顶元素出栈,即销毁当前页面,返回上一级页面。从一个页面跳转到另一个页面,监听Button的。方法,将当前上下文和需要跳转的页面上下文传入,布局中,然后对价格、名称、描述进行垂直排列。

2022-11-07 17:04:37 1168 3

原创 Flutter——常用布局

《繁花》将围绕阿宝展开,''上世纪九十年代初,煌煌大时代,''人人争上游,阿宝也变成了宝总,成功过,失败过,在沪上弄潮儿女中留下一段传奇。''有过金碧辉煌,有过细水长流,男男女女,涨涨跌跌,道尽一个时代的情义与至真。

2022-11-06 22:02:25 1053 4

原创 Flutter——加载图片的多样玩法

在网络图片未加载出来时,显示本地图片,当网络图片返回时替换本地图片并展示一个深入浅出的动画,如果加载错误,则显示错误图。当网络图片未加载完成时,显示loading动画,直到加载完成。在Container中加载本地图片。

2022-11-02 22:17:51 2192 2

原创 Flutter——软件安装与环境配置

对于原生开发的我而言,dart与Java和Kotlin存在很大区别,其次不是通过XML去进行视图展示,跟Web的js和ts有更多相似之处,但优点不言而喻,毕竟是风口上的产物

2022-11-02 21:42:45 1575 4

原创 Android——Glide的多样使用

我们进入一个Activity时,触发网络请求,Glide开始请求数据,当Glide未完成数据返回时,我们退出此Activity,即销毁,会触发异常,因为Glide仍在运行,当它的数据返回时,发现Activity已经被销毁啦,就会产生报错异常,所以在必要的Glide代码中加一个生命周期判断。当网络请求过多或者业务繁忙时,Glide返回可能会有一定延迟,此空窗期就会不显示任何东西,通过。可添加一张占位符,在数据未返回之前,显示一张默认图片。在开发需求中,往往会需要将某些图片进行圆角处理,通过。

2022-10-28 13:40:35 1101 2

原创 Android——一个简单的天气APP

此天气数据源采用[心知天气API(试用版)](https://www.seniverse.com/),免费版获取数据有限,只能获取普通的温度、湿度等,例如压力、云量、可见度等均获取不到,试用版相当于正式版,可以获取大部分数据,试用日期是14天。首页不同城市天气页面之间的滑动采用的是`ViewPager`,编辑界面的搜索栏采用的是`SearchView+ListView`,其中城市数据源是统计到一个xml文件中;通过点击搜索匹配项,插入至SQLite数据库中,然后刷新当前天气子项,然后通过`EventBu

2022-09-02 23:27:02 5625 9

原创 Kotlin的基本使用

示例四:定义一个可为空的全局变量,在emptyE中对其判空处理,在不为空的情况下执行emptyF, 在emptyF中将全局变量转为大写,但此时不能完成编译,因为uppercase方法不知道外部进行类判空处理,所以需要加上非空断言工具!,即非常确定此处不为。之分,只允许有一个主构造函数,可以拥有多个此构造函数,两者区别在于,主构造函数没有函数体,直接在类名之后完成定义。当只有一句表达式时,可省略。示例二:因为数组下标是从0开始,所以在遍历数组时,数组长度为n的数组,当下标移动到n即越界,所以使用。...

2022-08-29 14:56:35 1144 1

原创 Android——m3u8视频文件下载

下载器采用开源框架Ariagithub中文文档service在Appliaction中启动,即启动app即启动service并且service只启动一次,后序通过单例binder去调用服务。

2022-07-27 19:03:14 2179 2

原创 Android——SRT字幕文件的下载、解压、转换、显示

需要在视频播放时,同步显示字幕,市面上主流的字幕文件一般为SRT文件,一般流程为从服务器请求一个url地址,此为zip字幕压缩文件,一般需要请求url,下载zip文件,解析zip文件得到字幕srt文件,最后进行显示。...

2022-07-27 16:34:53 3205 2

原创 Android——解决BottomNavigationView+Fragment重建与重叠问题

在BottomNavigationView+多个Fragment框架下,进行Fragment切换时,会导致Fragment重建,也会出现同级Fragment未hide,导致重叠。

2022-07-27 15:42:48 2070 2

原创 Android——Fragment懒加载

大部分APP框架由一个单例MainActivity和多个Fragment组成;在实际开发中常使用BottomNavigationView+Fragment,而又在Fragment中使用ViewPager+Fragment,多层嵌套Fragment,进入一个界面之后,会牵连多个同级的Fragment同时启动,若都存在网络请求,则负担很大,所有一般当用户滑到某个界面时,此Fragment开始加载数据,其他Fragment则不受印象。...

2022-07-27 15:19:45 849 2

原创 Android|完美适配Activity和Fragment唤起和收起系统软键盘

在Fragment中存在EditText,然后点击外部区域,或者点击其他非此EditText的控件时,收起系统软键盘

2022-07-07 09:59:03 1082 3

原创 Android——浅析OKHttp+Gson

下面为从某个服务器中拉去的数据,其中data为数据核心部分,minfo为一个数组,其中包含所需要渲染的数据,filter为一个数据实体,包含筛选条件信息。创建对应格式化实体类从服务器端拉去的Json字符串,需要创建对应的实体类进行接收,本文介绍一种插件,用于Android端格式化建立实体类点击设置->plugins->搜索并安装插件GsonFormatPlus插件第一步,在需要创建实体类的地方右击空白处,在弹出的显示框中选择第二步,然后在选择刚才安装的插件GsonFormatPlus第三步,最后将

2022-06-18 19:02:56 1212 2

C语言考研真题集-内附70多套真题

C语言考研真题集——内附70多套真题,其中涵盖全国各大高校C语言期末考试真题、C语言考研真题、C语言专升本真题。适合了解出题手段以及题海战术。以便巩固自身应试水平

2023-08-17

涵盖全国13所考研院校C语言真题

涵盖全国13所考研院校C语言真题

2023-08-17

C语言考试试卷(共计89套试卷)

C语言考试试卷(共计89套试卷) 包含考研试卷、各院校期中考试、期末考试、专升本试卷

2022-05-05

Andrloid开发城市列表xml文件

Andrloid开发城市列表xml文件

2022-03-05

Git-2.23.0-64-bit.rar

Git-2.23.0-64-bit.rar

2021-02-10

Cortex-M3权威指南(中文).pdf

Cortex-M3权威指南(中文).pdf

2021-01-26

空空如也

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

TA关注的人

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