自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

tiger_gy的博客

今天的努力是为了明天的绽放!

  • 博客(78)
  • 资源 (1)
  • 收藏
  • 关注

原创 flutter之 底部弹出BottomSheet

项目中遇到多种条件筛选的情况,我使用了flutter官方的BottomSheet组件来解决了我的问题。先看一下效果图:ModalBottomSheet这个ModalBottomSheet就是类似一个Dialog,有一个半透明的背景层,然后上面显示你自定义的内容。 用法非常简单,Flutter提供了一个showModalBottomSheet的方法弹出一个BottomSheet。实现代码:...

2020-08-04 17:22:35 1389

原创 Flutter之单选按钮的使用

老规矩,先来看一张效果图:简单粗暴,直接上代码:class AddExpense extends StatefulWidget { @override State<StatefulWidget> createState() => _AddExpensePage();}class _AddExpensePage extends State<AddExpense> { List<String> _radioList = List<Stri

2020-08-04 17:09:06 1830

原创 Flutter模仿12306城市搜索、城市列表、索引。

Flutter模仿12306城市搜索、城市列表、索引。项目中报销模块需要选择城市,看了一下12306的效果,就模仿做了一个先看一下效果图:文中使用的pub插件:azlistview: ^0.1.2 lpinyin: ^1.0.7刚开始也没什么思路,网上找了一篇博客,感觉和我的需求大致很是相似,就在上面做了一些修改,实现自己的需求。博客地址所有城市的json目录JSON内容:{ "china": [ { "name": "北京市" }, {

2020-07-22 17:04:55 1905 5

原创 flutter 仿淘宝右侧多条件筛选

flutter 右侧实现多条件的筛选效果。效果图实现要求:1、两种类型筛选条件数据源。2、报销月份每行展示3列,可折叠。3、报销类型,badge长度自适应。modle 类search.dartclass Search { String code; bool check; Search({this.code, this.check}); Search.fromJson(Map<String, dynamic> json) { code = json['co

2020-07-13 13:30:41 1579 2

原创 flutter 之顶部搜索栏SearchDelegate

搜索栏是大部分APP都包括的组件,实际开发中需要这个搜索栏,网上阅读了一些资料后。实现flutter的搜索栏。Flutter为我们提供了这个组件SearchDelegate,先看一下效果图哦。一、定义SearchDelegateclass searchBarDelegate extends SearchDelegate<String> { /*这个方法返回一个控件列表,显示为搜索框右边的图标按钮,这里设置为一个清除按钮,并且在搜索内容为空的时候显示建议搜索内容,使用的是showSugge

2020-07-13 11:26:34 4012 2

原创 Flutter 实现主题切换,适配暗黑模式!

先看一张效果图实现大致思路:1、使用一个状态管理器,来实现主题的切换。这里使用的是redux。版本:flutter_redux: ^0.6.0。2、使用本地存储来记录选择的模式,0:浅色模式。1:深色模式。2:跟随系统。本地存储使用的是:shared_preferences: 0.5.6。3、在打开APP的时候,根据本地存储的标志位,来选择具体的AppTheme。**首先写一个 全局的状态管理类WSState.dart。import 'package:ws/redux/theme_redux

2020-07-13 10:31:19 2637

原创 性能优化---Bitmap内存管理及优化

性能优化---Bitmap内存管理及优化图片存在的几种形式:File流的形式Bitmap的形式---内存图片压缩的几种方式:1.质量压缩原理:通过算法扣掉(同化)图片中的一些某个些点附近相近的像素,达到降低质量减少文件大小的目的。牺牲:减小了图片质量。注意:它其实只能实现对file的影响,对加载这个图片出来...

2020-03-09 17:21:00 370

原创 性能优化-电量优化

性能优化-电量优化 最近看视频看到了电量优化,手比较懒也没有实际的操作检测,记录了笔记,方便以后使用。常见耗电的硬件:屏幕、3G/4G、wifi、CPU、GPU、相机等。如何查看电量消耗? 1、系统自带。 2、唯一可行的方案是使用第三方监测电量的设备,这样才能够获取到真实的电量消耗(因为第...

2020-03-09 17:16:03 375

原创 性能优化--UI渲染性能优化

性能优化--UI渲染性能优化卡顿现象 渲染功能是应用程序最普遍的功能,开发任何应用程序都是这样,一方面,设计师要求为用户展现可用性最高的超然体验,另一方面,那些华丽的图片和动画,并不是在所有的设备上都能刘畅地运行。我们来了解一下什么是渲染性能。 首先,我们要知道Android系统每隔16ms就重新绘制一次Activity,也就是...

2020-03-03 19:48:56 276

原创 性能优化--内存泄漏

性能优化--内存泄漏什么是内存泄漏? 内存不在GC掌控之内了。当一个对象已经不需要在使用了,本该被回收时,而有另外一个正在使用的对象持有它的引用从而就导致对象不能被回收。这种导致了本该被回收的对象不能被回收而停留在堆内存中,就产生了内存泄漏内存分配的几种策略1、静态的 静态的存储区:内存在程序编译的时候就已经分配好,,...

2020-03-02 14:43:50 177

原创 01 性能优化图

01 性能优化图

2020-03-02 14:32:24 225

原创 C++构造函数

C++的构造函数C++的构造函数可以分为 构造函数、析构函数、拷贝构造函数。构造函数无参构造函数,写了的话会覆盖系统默认的无参构造函数有参构造函数会覆盖默认的构造函数。class Teacher{private: char *name; int age;public: //无参构造函数(写了,就会覆盖默认的无参构造函数) Teacher(){ ...

2019-12-13 17:24:51 329

原创 C++的引用

C++的引用C与C++的关系C++与C可以进行汇编C++面向对象编程,C面向过程编程C++是对C的一个增强。什么是引用?引用变量是一个别名,也就是说,它是某个已存在变量的另一个名字。一旦把引用初始化为某个变量,就可以使用该引用名称或变量名称来指向变量。标题引用的主要功能作为函数的参数 或者 返回值。引用是C++里面的。引用必须要有值不能为空引用如何与指针区分开?指针存放...

2019-12-13 16:33:29 130

原创 Flutter常用组件之Container

Container是一个组合类容器。 /// Container介绍 // alignment 位置 // padding 内边距 // margin 外边距 // constraints 盒子 宽高的限制 // width 容器宽 // height 容器高 ...

2019-10-24 15:14:05 487

原创 JNI文件的拆分与合并

通过使用JNI完成对本地文件的拆分与合并1、MainActivity.javapublic class MainActivity extends AppCompatActivity { private String SD_CARD_PATH ; // Used to load the 'native-lib' library on application startup....

2019-10-23 20:33:40 190

原创 Flutter常用组件之Text

Flutter常用组件之Text最近在学习flutter,就在CSDN买了一个课程学习。网上也有好多免费的教程,有点学不进去,花钱买完了就能看进去了。花完钱不学习感觉就有点罪恶感。哈哈 真香。下面对Text简单的介绍一下 。#样式...

2019-10-23 17:36:13 186

转载 什么是Flutter

什么是Flutter 最近项目快结束了,时间比较充足了,是时候学习一波flutter了。晚上找了找资料 感觉这个介绍比较全面 转载地址:https://book.flutterchina.club/chapter1/flutter_intro.htmlFlutter简介 Flutter 是 G...

2019-10-23 14:09:25 312

原创 RecyclerView交互动画 模拟QQ 拖拽、滑动、删除

RecyclerView交互动画 模拟QQ 拖拽、滑动、删除最近在一个公开课里面看到了这个效果 觉得相当的漂亮,于是记录下来方便 便于之后使用,先看一下效果图直接上代码了StartDragListenerpublic interface StartDragListener { /** * 该接口用于需要主动回调拖拽效果的 ...

2019-05-16 14:44:38 376

原创 RecyclerView 添加头布局 和 底布局

RecyclerView 添加头布局 和 底布局RecyclerView 默认是没有添加头部和底部布局的方法。而在listView我们经常会用到list.addHreadView,list.addFooterView,而在recyclerView是不提供这种方法的,这可如何是好。于是观察了listView 是如何添加头布局和底部布局的,模拟li...

2019-05-16 14:05:44 3241 4

原创 RecyclerView添加分割线

RecyclerView添加分割线RecyclerView没有默认的分割线 需要自己去绘制,实现rv的分割线需要继承ITEMDecoration,先看两张效果图两种实现的方法,一种是实现了 水平或垂直的分割线,一种是实现了网格的分割线。我把实现两种方式的代码放在下面了 根据实际需要进行使用。activity_ma...

2019-05-16 11:51:42 532

原创 RecyclerView的简单使用+点击事件

RecyclerView的简单使用RecyclerView是谷歌在高版本提出的一个替代listView和GridView的控件。高度解耦自带了ViewHolder先看一下效果图 包括RV的水平效果、垂直效果、和网格效果。 以上的效果只需在代码中修改setLayoutManager就可以实现。真...

2019-05-16 10:59:03 633

原创 JNI的基本数据类型与C++对java对象的访问

JNI的基本数据类型与C++对java对象的访问 我使用的IDE是Android studio3.3 新建一个项目的时候选择 Native C++会自动创建一个带有Native 方法的项目,返回字符串“Hello From C++” MainActivity.java public native String stringFromJNI...

2019-04-24 17:15:39 588

原创 C语言的结构体与联合体

C语言的结构体与联合体### 结构体* 结构体中的属性长度会被自动补齐,这是为了方便指针位移运算* 结构体中不能定义函数,可以定义函数指针* 程序运行时,函数也是保存在内存中的,也有一个地址* 结构体中只能定义变量* 函数指针其实也是变量,它是指针变量* 函数指针的定义 返回值类型(*变量名)(接收的参数);...

2019-03-20 09:02:47 725

原创 C语言的栈内存与堆内存

C语言的栈内存与堆内存* 栈内存* 系统自动分配* 系统自动销毁* 连续的内存区域* 向低地址扩展* 大小固定* 栈上分配的内存称为静态内存* 静态内存分配* 子函数执行完,子函数中的所有局部变量都会被销毁,内存释放,但内存地址不可能被销毁,只是地址上...

2019-03-20 09:02:30 1855

原创 C语言学生学号管理系统练习

C语言学生学号管理系统练习需要实现的需求:1、保存班级人数。2、申请一块堆内存保存学生的学号。3、过程中来了几个插班生。4、扩展一下堆内存。5、保存插班生的学号。代码实现如下:#include<stdio.h> #include<stdlib.h> /**保存班级人...

2019-03-20 09:02:01 976

原创 C语言中数组和指针的关系

C语言中数组和指针的关系* 数组占用的内存空间是连续的* 数组变量保存的是第0个元素地址,也就是首地址* *(p + 1):指针位移一个单位,一个单位是多少个字节,取决于指针的类型#include<stdio.h> #include<stdlib.h> /**数组实际上就是...

2019-03-19 17:24:27 504

原创 C语言的多级指针

C语言的多级指针* int* p; int 类型的一级指针。 int** p2; int 类型的二级指针* 二级指针变量只能保存一级指针变量的地址* 有几个* 就是几级指针, int*** 三级指针* 通过int类型三级指针 操作int类型变量的值 ***p#include<stdio.h> ...

2019-03-19 17:21:39 263

原创 C语言指针的练习

指针的练习 * 值传递(交换两个数的值)* 引用传递本质是把地址传递过去* 所有传递其实本质都是值传递,引用传递其实也是传递一个值,但是这个值是一个内存地址#include<stdio.h> #include<stdlib.h> ...

2019-03-19 17:19:50 387

原创 C语言指针的入门pointer

指针的入门pointerpointer指针,一般计算机中用一个16进制数来表示内存地址。通过使用数据类型加*声明一个指针变量,指针变量只能用来保存内存地址,用取地址符&i 把变量i的地址取出来 用指针变量pointer 保存了起来,此时我们可以说 指针pointer指向了 i的地址。#include<st...

2019-03-19 17:16:18 2655

原创 C语言内存地址的概念

内存地址的概念声明一个变量,就会立即为这个变量申请内存,一定会有一个对应的内存地址* 没有地址的内存是无法使用的* 内存的每一个字节都有一个对应的地址* 内存地址用一个16进制数来表示* 32位操作系统最大可以支持4G内存* 32位系统的地址总线为32位,也就是说系统有2^32个数字可...

2019-03-19 17:09:24 2590

原创 C的输入函数

C的输入函数* scanf("占位符", &地址);* & 取地址符* C字符串不检查下标越界 使用时要注意#include<stdio.h> #include<stdlib.h> /**scanf("占位符",内存地址) */main...

2019-03-19 17:07:59 812

原创 C语言的输出函数

C语言的输出函数C语言的输出函数%d-int%ld – long int%lld - long long%hd – 短整型%c- char%f -float%lf – double%u – 无符号数...

2019-03-19 17:06:57 655

原创 C语言的基本数据类型

C语言的基本数据类型c语言的基本数据类型有9个,分别是int、long、short、char、float、double、void、signed、unsigned。其中int、long、short、char、float、double在java语言中常见。其余三个在java语言没有。* signed 有符号数 最高位是符号位 ...

2019-03-19 17:02:35 23365 2

原创 C语言的基本语法

C语言的基本语法 #include<stdio.h>// 相当于 java的import .h c的头文件 stdio.h standard io 标准输入输出#include<stdlib.h>// stdlib standard library...

2019-03-19 16:56:36 306

原创 JNI的简介

JNI的简介##what 什么是JNI* JNI java native interface native本地java本地接口* 通过JNI可以实现java和本地代码之间相互调用* jni可以看做是翻译 实际上就是一套协议## why 为什么要用JNI* Java 一处编译到处运行...

2019-03-19 16:53:18 191

原创 自定义侧滑面板SlideView

自定义侧滑面板SlideView最近新学了一个自定义的侧滑面板,感觉挺好玩的。记录下来 方便以后查看。效果图如下: 1. 在xml布局里摆放内容. include2. 在自定义ViewGroup里, 进行measure测量, layout布局3. 响应用户的触摸事件...

2019-03-15 16:52:00 263

原创 自定义listView 实现 下拉刷新+下拉加载的功能

自定义listView 实现 下拉刷新+下拉加载的功能 ...

2019-03-13 14:13:53 1137

原创 自定义下拉选择框 PopupWindow

自定义下拉选择框 PopupWindow直接上代码:activity_main.xml&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" x...

2019-03-08 17:04:58 405

原创 使用ViewPager实现轮播图自动播放

使用ViewPager实现轮播图自动播放 通过使用ViewPager实现图片的自动轮播,也可以通过将自动滑动关闭通过手动滑动进行图片的滑动,现在简单分析一下实现的步骤:1、让图片滑动起来。2、让图片和文字、指示器对应起来。3、让轮播器无限循环。向右无限循环0 -&gt...

2019-03-08 14:55:56 5141

原创 自定义优酷菜单页面

自定义优酷菜单页面 看到一个视频实现了老优酷APP的菜单页面,感觉效果比较炫酷,于是决定写篇文章记录下来,方便以后查阅。先看一下效果图:先说一下实现的大致步骤吧:1、在xml中将各个组件位置摆放好。2、给指定的控件添加点击事件。3、根据业务逻辑、执行动画(补间动画、旋转动画)。4、返回按钮的...

2019-03-07 16:06:50 352

Android 多线程下载+断点续传+隐式意图调用系统安装程序安装APK

描述android 多线程下载文件的详细步骤+断点续传 多线程下载步骤分析 1、获取服务器文件大小 conn.getContentLength(); 2、在客户端创建一个和服务大小一模一样的文件(目的:提前申请好空间) 3、开多个线程下载文件(每个线程下载文件的开始位置和结束位置) 4、知道每个线程什么时候下载结束。 每个线程下载的计算公式 blockSize=总长度/线程个数 第N个线程下载 开始位置 n*blockSzie 结束位置(n+1)*blockSize-1 最后一个线程 开始n*blockSize----结束length-1

2018-11-22

空空如也

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

TA关注的人

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