Flutter进阶—点击、拖动和其他手势
Flutter中的手势系统有两个层次。第一层具有原始指针事件,其描述了穿过屏幕的指针(例如触摸、鼠标和触控笔)的位置和移动。第二层具有手势,其描述由一个或多个指针移动组成的语义动作。 指针 指针代表用户与设备屏幕交互的原始数据。有四种类型的指针事件: PointerDownEvent:指针已经在特定位置联系了屏幕。 PointerMoveEvent:指针已经从屏幕上的一个位置移动到另一个位置。...
View Articleffmpeg实战教程(九)windows下ffmpeg命令+nginx + rtmp实现推流,拉流。
概述 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 nginx-rmtp-module是Nginx服务器的流媒体插件。 nginx通过rtmp模块提供rtmp服务, ffmpeg推送一个rtmp流到nginx, 然后客户端通过访问nginx来收看实时视频流。 先介绍一下windows下搭建nginx + rtmp 有两种方案: (一)...
View ArticleFlutter进阶—解析动画
浅解动画 Flutter中的动画系统基于Animation对象的类型。控件可以直接通过读取其当前的值并监听其状态变化来将这些动画添加到其构建函数中,或者可以使用动画作为更精细的动画的基础,并将它们传递给其他控件。 Animation...
View Article深入理解Runloop,看我一篇就够了
前言 RunLoop 是 iOS 和 OSX 开发中非常基础的一个概念,为了让大家更加快速融入,请先一段代码: + (NSThread *)networkRequestThread { static NSThread *_networkRequestThread = nil; static dispatch_once_t oncePredicate;...
View ArticleAndroidN多窗口支持
Android N 可以同时显示多个应用窗口。 在手机上,两个应用可以在“分屏”模式中左右并排或上下并排显示。例如,用户可以 在上面窗口聊QQ,下面窗口发送短信。 如图所示,两个app在分屏模式中上下显示: 如何让你的app支持多窗口? 如果你的app支持Adnroid N,在AndroidManifest.xml文件中对 或...
View Article获取iOS应用中的图片资源
引 高仿开发现有的App是一种很好的学习方式,但是如果没有对应的图片资源,即使功能做出来了差别依然很大,看上去成就感会低很多,这里介绍一种获取其他应用的图片资源的方式。 声明一下,该方法仅用于学习交流使用,不应拿来做一些商业用途,切记切记。 在iTunes下载App 在Mac上我们打开iTunes,是可以下载各个平台的App的,如图所示: 左上角选择“应用”,中间选择App...
View Articleffmpeg实战教程(十)ffmpeg/camera实现最近很火的视频壁纸,相机壁纸
本篇实现一个有意思的玩意儿,视频壁纸,相机壁纸 这玩意好像现在还都是国外版本,哈哈 先上图: 视频壁纸 相机壁纸 1.动态壁纸制作的知识: 每一个动态壁纸都继承自WallpaperService,其中必须实现的抽象方法onCreateEngine,返回一个Engine对象,实际上所有的绘图与刷新都是由engine完成。如下 public class VideoLiveWallpaper...
View ArticleActivity具体是怎么创建的?又是怎么显示出来的?
转载请注明出处:http://blog.csdn.net/crazy1235/article/details/72236314 startActivity() 到底发生了什么? onCreate() 是什么时候回调的? onResume() 又是什么时候回调的? 为什么回调OnResume()之后界面才可见? 带着这些问题往下看!!! 作者:crazy1235 发表于2017/5/16...
View ArticleAndroid Things:用户驱动-传感器
一、传感器简介 Android传感器框架支持多种传感器类型来测量物理环境的状况,并且从应用程序读取原始数据。使用传感器驱动,你的应用可以扩展框架,并且添加新的通过Peripheral I/O连接的传感器设备; 和Android内置的传感器一样,来自这些传感器的数据通过相同的SensorManager...
View ArticleJava虚拟机(三)垃圾标记算法与Java对象的生命周期
相关文章 Java虚拟机系列 前言 这一节我们来简单的介绍垃圾收集器,并学习垃圾标记的算法:引用计数算法和根搜索算法,为了更好的理解根搜索算法,会在文章的最后介绍Java对象在虚拟机中的生命周期。 1.垃圾收集器概述 垃圾收集器(Garbage...
View ArticleAndroid WebView简要介绍和学习计划
我们通常会在App的UI中嵌入WebView,用来实现某些功能的动态更新。在4.4版本之前,Android WebView基于WebKit实现。不过,在4.4版本之后,Android WebView就换成基于Chromium的实现了。基于Chromium实现,使得WebView可以更快更流畅地显示网页。本文接下来就介绍Android...
View ArticleAndroid WebView加载Chromium动态库的过程分析
Chromium动态库的体积比较大,有27M左右,其中程序段和数据段分别占据25.65M和1.35M。如果按照通常方式加载Chromium动态库,那么当有N个正在运行的App使用WebView时,系统需要为Chromium动态库分配的内存为(25.65 + N x...
View ArticleAndroid WebView执行GPU命令的过程分析
Android WebView使用的Chromium引擎,虽然没有自己的GPU进程或者线程,但是却可以执行GPU命令。原来,Android WebView会给它提供一个In-Process Command Buffer GL接口。通过这个接口,Chromium引擎就可以将GPU命令提交给App的Render Thread执行。本文接下来就详细分析Android...
View ArticleAndroid WebView硬件加速渲染网页UI的过程分析
Android WebView作为App UI的一部分,当App UI以硬件加速方式渲染时,它也是以硬件加速方式渲染的。Android WebView的UI来自于网页,是通过Chromium渲染的。Chromium渲染网页UI的机制与Android App渲染UI的机制是不一样的。不过,它们会一起协作完成网页UI的渲染。本文接下来就详细分析Android...
View Article使用Block实现KVO
在iOS开发中,我们可以通过KVO机制来监听某个对象的某个属性的变化。 用过KVO的同学都应该知道,KVO的回调是以代理的形式实现的:在给某个对象添加观察以后,需要在另外一个地方实现回调代理方法。这种设计给人感觉比较分散,因此突然想试试用Block来实现KVO,将添加观察的代码和回调处理的代码写在一起。在学习了ImplementKVO的实现以后,自己也写了一个:SJKVOController...
View ArticleAndroid Tangram模型:连淘宝、天猫都在用的UI框架模型你一定要懂
前言 Tangram 是阿里出品、用于快速实现组合布局的框架模型,在手机天猫 Android & iOS版 内广泛使用 今天我将对Tangram 模型 进行全面介绍,希望你们会喜欢。 目录 1. 为什么要使用 Tangram 模型 在讲解 Tangram模型 前,我们先来搞懂一个问题:为什么要使用 Tangram模型 1.1 背景 技术 是用于 满足需求业务 的...
View ArticleAndroid 开发 Tip 13 -- generateViewId
转载请注明出处:http://blog.csdn.net/crazy1235/article/details/72123984 View.java public static int generateViewId() { for (;;) { final int result = sNextGeneratedId.get(); // aapt-generated IDs have the high...
View Article