综合( 右侧选择分类 )
android01

Android源码解析(二十一)-- Android PopupWindow加载绘制流程

在前面的几篇文章中我们分析了Activity与Dialog的加载绘制流程,取消绘制流程,相信大家对Android系统的窗口绘制机制有了一个感性的认识了,这篇文章我们将继续分析一下PopupWindow加载绘制流程。在分析PopupWindow之前,我们将首先说一下什么是PopupWindow?理解一个类最好的方式就是看一下这个类的定义,这里我们摘要了一下Android系统中PopupWindow的
565 人浏览
kotlin

kotlin基本语法

一、定义包包的声明应处于源文件顶部:packagemy.demo importjava.util.* //……目录与包的结构无需匹配:源代码可以在文件系统的任意位置。注:更多关于包的内容请参考包。二、定义函数1,带有两个Int参数、返回 <code>Int 的函数://函数 funsum(a:Int,b:Int):Int{ returna+b } //测试 funmain
565 人浏览
xiaozhi

4.使用 CSS Grid Generator来快速使用及学习 Grid 布局

为了保证的可读性,本文采用意译而非直译。想阅读更多优质文章请猛戳GitHub博客,一年百来篇优质文章等着你!CSS Grid GeneratorCSS Grid Generator是一个由Sarah Drasner创建的免费工具。它是一个可视化设计工具,允许咱们创建一个基本的 grid 布局,然后就可以使用生成对应的代码,帮助咱们快速布局。第一次进入是界面是这样子的:CSS Grid 布局示例当我
565 人浏览
php

设置环境变量配置的简单方法.env

什么是.env.env文件位于项目根目录下,作为全局环境配置文件。 通过 .env文件 加载环境变量并且能够自动的通过 getenv(), <code>$_ENV和 <code>$_SERVER 自动调用.这是一个PHP版本 Ruby dotenv. 示例// 运行环境名称 APP_ENV=local // 调试模式,开发阶段启用,上线状态禁用。 APP_DEBU
565 人浏览
xiaozhi

4.React 新特性讲解及实例(一)

本节主要讲解以下几个新的特性:ContextContextTypelazySuspense错误边界(Error boundaries)momoContext定义:Context 提供了一种方式,能够让数据在组件树中传递而不必一级一级手动传递。这定义读的有点晦涩,来看张图:假设有如上的组件层级关系,如果最底层的Item组件,需要最顶层的Window组件中的变量,那我们只能一层一层的传递下去。非常的繁
565 人浏览
android01

Android源码解析(十九)-- Dialog加载绘制绘制流程

前面两篇文章,我们分析了Activity的布局文件加载、绘制流程,算是对整个Android系统中界面的显示流程有了一个大概的了解,其实Android系统中所有的显示控件(注意这里是控件,而不是组件)的加载绘制流程都是类似的,包括:Dialog的加载绘制流程,PopupWindow的加载绘制流程,Toast的显示原理等,上一篇文章中,我说在介绍了Activity界面的加载绘制流程之后,就会分析一下剩
565 人浏览
xiaozhi

24.JavaScript中轻松遍历对象属性的几种方式

自身可枚举属性Object.keys()方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用for...in循环遍历该对象时返回的顺序一致 。如果对象的键-值都不可枚举,那么将返回由键组成的数组。这是合理的,因为大多数时候只需要关注对象自身的属性。来看看一个对象拥有自身和继承属性的例子,Object.keys()只返回自己的属性键:letsimpleColors={
563 人浏览
littleGG

iOS 面试

作为面试官,我经常会问的问题。希望给找工作的同学,提供一点帮助1、app生命周期2、app推送流程3、深浅copy4、为什么代理要用weak?block和代理的区别5、AFnetworking 、SDwebImage 工作原理6、KVO 原理7、autorelease 的使用与注意8、GCD、NSoperation 区别9、简单谈谈动画(uiview动画,CABasicAnimation的基本使用
563 人浏览
cheng

程序员实用工具网站

目录1、搜索引擎2、PPT3、图片操作4、文件共享5、应届生招聘6、程序员面试题库7、办公、开发软件8、高清图片、视频素材网站 9、项目开源10、在线工具宝典大全 程序员开发需要具备良好的信息检索能力,为了备忘(收藏夹真是满了),将开发过程中常用的网站进行整理。 1、搜索引擎1.1、秘迹搜索一款无敌有良心、无敌安全的搜索引擎,不会收集私人信息,保护私隐,没有Cookie,并且秘迹搜索聚合了百度
563 人浏览
cnbzlj

如何配置YII2伪静态,有无后缀都可以访问,默认.html后缀

有无后缀都可访问,怎么默认url是.html后缀,直接上代码'urlManager' => [ 'enablePrettyUrl' => true, 'showScriptName' => false, // 'enableStrictPa
563 人浏览
kotlin

Kotlin简介

提供Kotlin语言和标准库的完整参考。Kotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发。Kotlin可以编译成Java字节码,也可以编译成JavaScript,方便在没有JVM的设备上运行。JetBrains,作为目前广受欢迎的Java IDE IntelliJ 的提供商,在 Apache 许可下已经开源其Kotlin 编程语言。Kotlin已正式成为Android
563 人浏览
hangge

K8s - Kubernetes使用详解8(使用Volume存储实现数据持久化)

我们知道容器和Pod的生命周期可能很短,会被频繁地销毁和创建。当容器销毁时,保存在容器内部文件系统中的数据都会被清除。为了持久化保存容器的数据,我们可以使用Kubernetes Volume。 除此之外,有一些场景可能一个pod里面的多个容器需要共享数据。同样可以借助Volume来实现。八、Volume 存储1,什么是Volume?(1)Volume的生命周期独立于容器,Pod中的容器可能被
562 人浏览
hangge

Docker - 镜像构建教程1(使用docker commit命令构建镜像)

Docker提供了两种构建镜像的方法:docker commit命令与Dockerfile构建文件。本文先介绍前者,也就是如何使用docker commit命令把一个正在运行的容器变成一个新的镜像。注意Docker并不建议用户通过docker commit方式构建镜像:一是因为这是一种手工创建镜像的方式,容易出错,效率低且可重复性弱。二是使用者并不知道镜像是如何创建出来的,里面是否有恶意程序。也
562 人浏览
hangge

JS - 使用正则表达式获取字符串里的部分内容(截取两个字符串之间内容

(1)有时我们需要从一个字符串中提取出需要的部分,这个借助正则表达式就可以很方便地实现。比如:从下面的字符串中根据key(冒号前面部分)获取对应的value(冒号后面的部分)1time:2019,status:open,count:3(2)为方便使用我们封装一个方法:123456// 从字符串中根据key获取对应的value值// 字符串格式:key1:value1,key2:value2,...
561 人浏览
php

2019年8月编程语言排行

八月头条:波澜不惊的月度排行 相比 7 月榜单,本月编程语言的排名并未有太大波动,因此TIOBE 官方也将 8 月编程语言排行榜戏谑为“Silly season”。在 Top 10 中唯一的变化就是 Objective-C 和 SQL 的位置首次发生了变换(Objective-C 位列第九,SQL 排名第十)。近年来,Objective-C 在苹果主推 Swift 的举措下,发展得尤为艰难。不过
561 人浏览
hangge

Docker - 加速镜像下载(使用DaoCloud镜像服务)

由于Docker Hub的服务器在国外,我们平时下载镜像可能会比较慢。好在DaoCloud为我们提供了免费的镜像服务,下面介绍如何配置使用这个镜像服务。(1)首先访问DaoCloud网站,注册一个用户。https://www.daocloud.io/(2)登录后,点击顶部菜单的“加速器”图标。(3)在弹出页面中找到适合自己系统的配置命令。(4)比如我是CentOS系统,则在命令终端中执行如下命令
560 人浏览
php

yii database操作绑定参数防止sql注入

绑定参数(Binding Parameters)当使用带参数的 SQL 来创建数据库命令时, 你几乎总是应该使用绑定参数的方法来防止 SQL 注入攻击,例如:$post = Yii::$app->db->createCommand('SELECT * FROM post WHERE id=:id AND status=:status') ->bindVal
560 人浏览
hangge

SpringBoot - @ControllerAdvice的使用详解1(全局异常处理 @ExceptionHandler)

顾名思义,@ControllerAdvice 就是 @Controller 的增强版。@ControllerAdvice 主要用来处理全局数据,一般搭配 @ExceptionHandler、@ModelAttribute、@InitBinder 使用。下面分别进行介绍。一、全局异常处理(搭配 @ExceptionHandler)1,基本用法(1)@ControllerAdvice 最常见的使用场
560 人浏览
xiaozhi

25.JavaScript中函数式编程基本原理简介

原文:https://medium.com/better-programming/introduction-to-the-basic-principles-of-functional-programming-in-javascript-6849ae196326译者:前端小智为了保证的可读性,本文采用意译而非直译。想阅读更多优质文章请猛戳GitHub博客,一年百来篇优质文章等着你!在长时间学习和使用
559 人浏览
java

从B站的代码泄露事件中,我们能学到些什么

先声明一下,本文不聊ISSUE中的七七八八,也不聊代码是否写的好,更不聊是不是跟蔡徐坤有关之类的吃瓜内容。仅站在技术人的角度,从这次的代码泄露事件,聊聊在代码的安全管理上,通常都需要做哪些事来预防此类事件的发生。同时,大家在阅读本文的时候,也可以深入思考下,自己团队是否也存在类似的问题,经过这次的事件,是否有必要针对性的做一些优化。最小权限“最小权限”原则是我们在学习Linux用户管理时候经常被提
559 人浏览