- autoescape-django模板中HTML转义
HeJD
摘一段文档:Controlsthecurrentauto-escapingbehavior.Thistagtakeseitheronoroffasanargumentandthatdetermineswhetherauto-escapingisineffectinsidetheblock.Theblockisclosedwithanendautoescapeendingtag.Whenauto-e
- CSS 预处理器语言Less
繁星学编程
CSScssless前端
文章目录概览Less是什么?Less安装通过[npm](https://www.npmjs.org/)安装Less转换为CSS变量(Variables)注释(Comments)混合(Mixins)嵌套(Nesting)1.选择器嵌套2.父选择器`&`@规则嵌套和冒泡运算(Operations)转义(Escaping)函数(Functions)命名空间和访问符映射(Maps)作用域(Scope)导入
- Chrome 沙箱逃逸 -- Plaid CTF 2020 mojo
XiaozaYa
V8chromemojo沙箱逃逸
文章目录前置知识参考文章环境搭建题目环境调试环境题目分析附件分析漏洞分析OOBUAF漏洞利用总结前置知识Mojo&Services简介chromiummojo快速入门MojodocsIntrotoMojo&Services译文:利用MojoIPC的UAF漏洞实现Chrome浏览器沙箱逃逸原文:CleanlyEscapingtheChromeSandbox参考文章本文主要参考PlaidCTF2020
- Swift 循环引用
Hanyang Li
SwiftSinaiOSSwift
1.异步操作//闭包应用场景:异步操作完成之后,通过闭包的参数传递网络请求结果funcloadData(finished:@escaping(_html:String)->()){//1.记录完成回调finishedCallBack=finished;DispatchQueue.global().async{print("模拟异步加载\(Thread.current)")Thread.sleep(
- Swift 闭包
小旗_96e8
第一步定义闭包typealiasswiftBlock=(_str:String)->Void第二步声明varcallBack:swiftBlock?//第二步声明第三步实现闭包funccallBackBlock(_block:@escapingswiftBlock){//第三步实现闭包callBack=block}第四步触发闭包ifcallBack!=nil{//第四步触发闭包callBack!(
- 解决git status中文乱码
招财酷炫猫
gitgit
Commandsthatoutputpaths(e.g.ls-files,diff),willquote“unusual”charactersinthepathnamebyenclosingthepathnameindouble-quotesandescapingthosecharacterswithbackslashesinthesamewayCescapescontrolcharacters(
- @escaping swift逃逸闭包和非逃逸闭包
瑶哥呗
使用@escaping关键字的闭包是逃逸闭包闭包默认是非逃逸闭包逃逸闭包延长了闭包的生命周期非逃逸闭包生命周期跟随函数的生命周期
- .key文件Linux如何运行,Linux下解析配置文件和GKeyFile读取配置文件
vivalavidawx
.key文件Linux如何运行
#thisisjustanexample#therecanbecommentsbeforethefirstgroup[FirstGroup]Name=KeyFileExampletthisvalueshowsnescaping#localizedstringsarestoredinmultiplekey-valuepairsWelcome=HelloWelcome[de]=HalloWelcome
- [swift 进阶]读书笔记-第六章:函数 C6P6_7 自动闭包_总
liaoworkinn
第六章:函数(function)6.6自动闭包。本节主要知识点:对@autoclosure和@escaping标注的使用场景及用法进行了介绍。知识点1:短路求值:像&&和||操作符中,只要左边不符合条件或者符合条件就直接忽略(短路掉)右边的操作数。///这里我们依赖了短路求值,第一个操作数不符合要求时候直接不走对应的逻辑代码letevens=[2,4,6]if!evens.isEmpty&&eve
- 逃逸闭包(@escaping)、 非逃逸闭包(@noescape)
_GXT
逃逸闭包(@escaping)当前方法大括号执行结束之后执行。常用于网络请求类中(异步回调)调用结果非逃逸闭包(@noescape)方法顺序执行,闭包走完方法才会执行结束调用结果
- WEB渗透—反序列化(八)
haosha。
PHP反序列化web安全php
Web渗透—反序列化课程学习分享(课程非本人制作,仅提供学习分享)靶场下载地址:GitHub-mcc0624/php_ser_Class:php反序列化靶场课程,基于课程制作的靶场课程地址:PHP反序列化漏洞学习_哔哩哔_bilibili十五、字符串逃逸例题-增多1.实例代码目标:判断是否pass=='escaping'user=$user;}}$param=$_GET['param'];//$_
- 36.音轨合成
小笨憨
直接上代码了classfunccoalescing(backFile:String,file:String,fromEarphone:Bool,complete:@escaping(_url:String)->Void)->Void{//第一步,必须创建AVMutableComposition,类似于很多api这个后缀也为composition,意思可以理解为合成物,但不是最终生成d文件letco
- swift: 记录截取本地视频最后一帧
小曼blog
思路:把视频分片,然后截取每一片截取图片,回调的是每一片中的一张图片。privatefuncgetImage(url:URL,callback:@escaping(UIImage?)->Void){//1.获取视频时长leturlAsset=AVURLAsset(url:url)letseconds=urlAsset.duration.secondsprint("second:\(seconds)
- vue记错误日志:Syntax Error: Error: Unexpected ‘/‘. Escaping special characters with \ may help.
Tan.]der
vuevue.js前端javascript
在运行Vue项目的时候出现错误:ERRORFailedtocompilewith1error9:55:33.......SyntaxError:Error:Unexpected'/'.Escapingspecialcharacterswith\mayhelp.并且dish文件夹为空原因:css代码格式有问题``或者``写法可以用//去注释正常css只能/**/注释,style标签里面lang="s
- Swift的autoclosure与escaping标签
Yasic
@autoclosure在《函数式Swift》第四章提到了Swift的autoclosure标签能够避免创建显式闭包的需求。在Swift中有一个特殊类型叫做函数类型,它由一个参数类型和返回值类型组成,用于表示一个函数、方法或闭包的类型,形式如下parametertype->returntypeautoclosure标签能够将特定表达式上的表达式当做隐式闭包来捕获,也就是将一个表达式当做函数类型来处
- Swift : 逃逸闭包 和 @escaping 属性
不会飞的船
回调callback的四种方式swiftios开发语言
非逃逸闭包:调用者完成前闭包就被执行完成了。逃逸闭包:调用函数完成了,但是闭包还没有被调用或者没有被完成。例:所有网络请求的函数,在完成调用请求后,直到响应返回,闭包才会被调用,所以这个类型的网络请求函数内等待响应的闭包就是逃逸闭包。这个类型的闭包,需要加入一个@escaping标记才可以编译通过。如下代码,展示了一个非逃逸闭包,和一个逃逸闭包。后者已经被标记了@escapings:函数Dispa
- swift escaping逃逸闭包用法
smking
iOSswift
用户funcinsert(_region:@escapingRegion)->Region{return{pointin!region(point)}}当其中需要执行后才返回,异步执行的,都需要添加escaping.如方法1.funcdoWork(block:()->()){block()}调用时:doWork{print(“hello,world”)}这种形式的闭包默认了一种假设,就是参数中的b
- Swift @escaping @ noescaping 逃逸闭包与非逃逸闭包
出来嗨
移动开发闭包@escaping逃逸闭包Swift
闭包只有在函数中做参数时才会区分逃逸闭包和非逃逸闭包。Swift3.0之后,传递闭包到函数中的时候,系统会默认为非逃逸闭包类型(NonescapingClosures)@noescaping,逃逸闭包在闭包前要添加@escaping关键字。从生命周期看两者区别:非逃逸闭包的生命周期与函数相同:1,把闭包作为参数传给函数;2,函数中调用闭包;3,退出函数。结束逃逸闭包的生命周期:1,闭包作为参数传递
- swift逃逸闭包和自动闭包
安果移不动
#Swift
当闭包作为一个实际参数传递给一个函数的时候,并且它会在函数返回之后调用我们就说这个闭包逃逸了,当你声明一个接受闭包作为形式参数的函数时,你可以在形式参数前写@escaping来明确闭包是允许逃逸的。闭包可以逃逸的一种方法是被存储在定义与函数外的变量里,比如说,很多函数接受闭包实际参数来作为启动异步任务的回调。函数在启动任务后返回,但是闭包要直到任务完成--闭包需要逃逸,以便于稍后调用//:AUIK
- iOS开发-Swift进阶之闭包,逃逸闭包 & 非逃逸闭包!
iOS大鑫
iOS面试swiftiOS开发objective-ciosswiftflutterxcode
swift进阶总汇本文主要分析逃逸闭包、非逃逸闭包、自动闭包逃逸闭包&非逃逸闭包逃逸闭包定义当闭包作为一个实际参数传递给一个函数时,并且是在函数返回之后调用,我们就说这个闭包逃逸了。当声明一个接受闭包作为形式参数的函数时,可以在形式参数前写@escaping来明确闭包是允许逃逸的如果用@escaping修饰闭包后,我们必须显示的在闭包中使用selfswift3.0之后,系统默认闭包参数就是被@no
- Swift中的逃逸闭包(@escaping )与非逃逸闭包(@noescaping)
稻草人G
iOS-开发iOSSwift闭包逃逸闭包
逃逸闭包概念:一个接受闭包作为参数的函数,该闭包可能在函数返回后才被调用,也就是说这个闭包逃离了函数的作用域,这种闭包称为逃逸闭包。当你声明一个接受闭包作为形式参数的函数时,你可以在形式参数前写@escaping来明确闭包是允许逃逸。例如:当网络请求结束后调用的闭包。发起请求后过了一段时间后这个闭包才执行,并不一定是在函数作用域内执行的。classViewController:UIViewCont
- 逃逸闭包和自动闭包
~废弃回忆 �༄
swiftswiftautoclosureescaping逃逸闭包自动闭包
1.逃逸闭包1.当闭包作为一个实际参数传递给一个函数的时候,并且它会在函数返回之后调用,我们就说这个闭包逃逸了.当你声明一个接受闭包作为形式参数的函数时,你可以在形式参数前写@escaping来明确闭包是允许逃逸的;2.闭包可以逃逸的一种方法是被存储在定义与函数外的变量里.比如说,很多函数接收闭包实际参数来作为启动异步任务的回调.函数在启动任务后返回,但是闭包要直到任务完成–闭包需要逃逸,以便于稍
- Swift探索9:逃逸闭包 & 非逃逸闭包
changcongcong_ios
swift探索swift开发语言ios
本文主要分析逃逸闭包、非逃逸闭包、自动闭包逃逸闭包&非逃逸闭包逃逸闭包定义当闭包作为一个实际参数传递给一个函数时,并且是在函数返回之后调用,我们就说这个闭包逃逸了。当声明一个接受闭包作为形式参数的函数时,可以在形式参数前写@escaping来明确闭包是允许逃逸的如果用@escaping修饰闭包后,我们必须显示的在闭包中使用selfswift3.0之后,系统默认闭包参数就是被@nonescaping
- Swift 关于逃逸闭包和非逃逸闭包的用法
Smile_chunyang
swiftswift闭包逃逸闭包非逃逸闭包
funcinsert(_region:@escapingRegion)->Region{return{pointin!region(point)}}当其中需要执行后才返回,异步执行的,都需要添加escaping.//如方法1.funcdoWork(block:()->()){block()}//调用时:doWork{print(“hello,world”)}这种形式的闭包默认了一种假设,就是参数中
- Swift开发中:非逃逸闭包、逃逸闭包、自动闭包的区别
Johnny.Cheung
IOSswift闭包swift闭包closure
1.非逃逸闭包(Non-EscapingClosure)定义:默认情况下,在Swift中闭包是非逃逸的。这意味着闭包在函数结束之前被调用并完成,它不会“逃逸”出函数的范围。内存管理:由于闭包在函数返回前被调用,因此编译器可以优化内存管理。使用场景:如果一个函数接受一个闭包作为参数,并且在函数返回之前执行这个闭包,那么这个闭包就是非逃逸的。funcperformNonEscapingClosure(
- wkwebView的一个爬坑记录:帧加载中断
大树和小鱼
wkwebView的一个爬坑记录:帧加载中断funcwebView(_webView:WKWebView,decidePolicyFornavigationAction:WKNavigationAction,decisionHandler:@escaping(WKNavigationActionPolicy)->Void)和funcwebView(_webView:WKWebView,decide
- URLService 继承 NSObject
一世沧桑画
//请求搜索的城市数据funcsearchmeng(search:String,vc:UIViewController,completion:@escaping(Any,Bool)->Void){//(1)判断无网络状态ifReachability.forLocalWiFi().currentReachabilityStatus()==NotReachable&&Reachability.forI
- swift Uivew 添加点击事件
大鹏你我他
privatestructAssociateKeys{staticvargestureKey="gestureKey"staticvartapBlock="tapBlock"}funcyx_setTapActionWithBlock(tapBlock:@escaping()->Void){self.isUserInteractionEnabled=truevartapGesture=objc_ge
- swift懒加载不需要使用weak unowned
piggybear
swift懒加载的闭包内部使用self,不会导致循环引用,原因是因为swift的懒加载闭包是非逃逸闭包@noescape什么是@noescape,@escaping非逃逸闭包(@noescape):在这个函数结束前闭包被调用逃逸闭包(@escape):在这个函数结束后闭包才被调用非逃逸闭包内使用self是不会导致循环引用,例如SnapKit使用self.view.addSubview(box)bo
- 闭包
大鹏你我他
varescapingCallBack:((_str:String)->())?/*无参数闭包*/funconeBlcok(callBlock:()->Void){callBlock()}/*带返回值闭包*/functwoBlcok(callBlock:(_str:String)->Void){print("1")callBlock("笑话")print("2")}/*闭包(非逃逸闭包)在函数结束
- ViewController添加button按钮解析。(翻译)
张亚雄
c
<div class="it610-blog-content-contain" style="font-size: 14px"></div>// ViewController.m
// Reservation software
//
// Created by 张亚雄 on 15/6/2.
- mongoDB 简单的增删改查
开窍的石头
mongodb
在上一篇文章中我们已经讲了mongodb怎么安装和数据库/表的创建。在这里我们讲mongoDB的数据库操作
在mongo中对于不存在的表当你用db.表名 他会自动统计
下边用到的user是表明,db代表的是数据库
添加(insert):
- log4j配置
0624chenhong
log4j
1) 新建java项目
2) 导入jar包,项目右击,properties—java build path—libraries—Add External jar,加入log4j.jar包。
3) 新建一个类com.hand.Log4jTest
package com.hand;
import org.apache.log4j.Logger;
public class
- 多点触摸(图片缩放为例)
不懂事的小屁孩
多点触摸
多点触摸的事件跟单点是大同小异的,上个图片缩放的代码,供大家参考一下
import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener
- 有关浏览器窗口宽度高度几个值的解析
换个号韩国红果果
JavaScripthtml
1 元素的 offsetWidth 包括border padding content 整体的宽度。
clientWidth 只包括内容区 padding 不包括border。
clientLeft = offsetWidth -clientWidth 即这个元素border的值
offsetLeft 若无已定位的包裹元素
- 数据库产品巡礼:IBM DB2概览
蓝儿唯美
db2
IBM DB2是一个支持了NoSQL功能的关系数据库管理系统,其包含了对XML,图像存储和Java脚本对象表示(JSON)的支持。DB2可被各种类型的企 业使用,它提供了一个数据平台,同时支持事务和分析操作,通过提供持续的数据流来保持事务工作流和分析操作的高效性。 DB2支持的操作系统
DB2可应用于以下三个主要的平台:
工作站,DB2可在Linus、Unix、Windo
- java笔记5
a-john
java
控制执行流程:
1,true和false
利用条件表达式的真或假来决定执行路径。例:(a==b)。它利用条件操作符“==”来判断a值是否等于b值,返回true或false。java不允许我们将一个数字作为布尔值使用,虽然这在C和C++里是允许的。如果想在布尔测试中使用一个非布尔值,那么首先必须用一个条件表达式将其转化成布尔值,例如if(a!=0)。
2,if-els
- Web开发常用手册汇总
aijuans
PHP
一门技术,如果没有好的参考手册指导,很难普及大众。这其实就是为什么很多技术,非常好,却得不到普遍运用的原因。
正如我们学习一门技术,过程大概是这个样子:
①我们日常工作中,遇到了问题,困难。寻找解决方案,即寻找新的技术;
②为什么要学习这门技术?这门技术是不是很好的解决了我们遇到的难题,困惑。这个问题,非常重要,我们不是为了学习技术而学习技术,而是为了更好的处理我们遇到的问题,才需要学习新的
- 今天帮助人解决的一个sql问题
asialee
sql
今天有个人问了一个问题,如下:
type AD value
A  
- 意图对象传递数据
百合不是茶
android意图IntentBundle对象数据的传递
学习意图将数据传递给目标活动; 初学者需要好好研究的
1,将下面的代码添加到main.xml中
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http:/
- oracle查询锁表解锁语句
bijian1013
oracleobjectsessionkill
一.查询锁定的表
如下语句,都可以查询锁定的表
语句一:
select a.sid,
a.serial#,
p.spid,
c.object_name,
b.session_id,
b.oracle_username,
b.os_user_name
from v$process p, v$s
- mac osx 10.10 下安装 mysql 5.6 二进制文件[tar.gz]
征客丶
mysqlosx
场景:在 mac osx 10.10 下安装 mysql 5.6 的二进制文件。
环境:mac osx 10.10、mysql 5.6 的二进制文件
步骤:[所有目录请从根“/”目录开始取,以免层级弄错导致找不到目录]
1、下载 mysql 5.6 的二进制文件,下载目录下面称之为 mysql5.6SourceDir;
下载地址:http://dev.mysql.com/downl
- 分布式系统与框架
bit1129
分布式
RPC框架 Dubbo
什么是Dubbo
Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。其核心部分包含: 远程通讯: 提供对多种基于长连接的NIO框架抽象封装,包括多种线程模型,序列化,以及“请求-响应”模式的信息交换方式。 集群容错: 提供基于接
- 那些令人蛋痛的专业术语
白糖_
springWebSSOIOC
spring
【控制反转(IOC)/依赖注入(DI)】:
由容器控制程序之间的关系,而非传统实现中,由程序代码直接操控。这也就是所谓“控制反转”的概念所在:控制权由应用代码中转到了外部容器,控制权的转移,是所谓反转。
简单的说:对象的创建又容器(比如spring容器)来执行,程序里不直接new对象。
Web
【单点登录(SSO)】:SSO的定义是在多个应用系统中,用户
- 《给大忙人看的java8》摘抄
braveCS
java8
函数式接口:只包含一个抽象方法的接口
lambda表达式:是一段可以传递的代码
你最好将一个lambda表达式想象成一个函数,而不是一个对象,并记住它可以被转换为一个函数式接口。
事实上,函数式接口的转换是你在Java中使用lambda表达式能做的唯一一件事。
方法引用:又是要传递给其他代码的操作已经有实现的方法了,这时可以使
- 编程之美-计算字符串的相似度
bylijinnan
java算法编程之美
public class StringDistance {
/**
* 编程之美 计算字符串的相似度
* 我们定义一套操作方法来把两个不相同的字符串变得相同,具体的操作方法为:
* 1.修改一个字符(如把“a”替换为“b”);
* 2.增加一个字符(如把“abdd”变为“aebdd”);
* 3.删除一个字符(如把“travelling”变为“trav
- 上传、下载压缩图片
chengxuyuancsdn
下载
/**
*
* @param uploadImage --本地路径(tomacat路径)
* @param serverDir --服务器路径
* @param imageType --文件或图片类型
* 此方法可以上传文件或图片.txt,.jpg,.gif等
*/
public void upload(String uploadImage,Str
- bellman-ford(贝尔曼-福特)算法
comsci
算法F#
Bellman-Ford算法(根据发明者 Richard Bellman 和 Lester Ford 命名)是求解单源最短路径问题的一种算法。单源点的最短路径问题是指:给定一个加权有向图G和源点s,对于图G中的任意一点v,求从s到v的最短路径。有时候这种算法也被称为 Moore-Bellman-Ford 算法,因为 Edward F. Moore zu 也为这个算法的发展做出了贡献。
与迪科
- oracle ASM中ASM_POWER_LIMIT参数
daizj
ASMoracleASM_POWER_LIMIT磁盘平衡
ASM_POWER_LIMIT
该初始化参数用于指定ASM例程平衡磁盘所用的最大权值,其数值范围为0~11,默认值为1。该初始化参数是动态参数,可以使用ALTER SESSION或ALTER SYSTEM命令进行修改。示例如下:
SQL>ALTER SESSION SET Asm_power_limit=2;
- 高级排序:快速排序
dieslrae
快速排序
public void quickSort(int[] array){
this.quickSort(array, 0, array.length - 1);
}
public void quickSort(int[] array,int left,int right){
if(right - left <= 0
- C语言学习六指针_何谓变量的地址 一个指针变量到底占几个字节
dcj3sjt126com
C语言
# include <stdio.h>
int main(void)
{
/*
1、一个变量的地址只用第一个字节表示
2、虽然他只使用了第一个字节表示,但是他本身指针变量类型就可以确定出他指向的指针变量占几个字节了
3、他都只存了第一个字节地址,为什么只需要存一个字节的地址,却占了4个字节,虽然只有一个字节,
但是这些字节比较多,所以编号就比较大,
- phpize使用方法
dcj3sjt126com
PHP
phpize是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块,下面介绍一个它的使用方法,需要的朋友可以参考下
安装(fastcgi模式)的时候,常常有这样一句命令:
代码如下:
/usr/local/webserver/php/bin/phpize
一、phpize是干嘛的?
phpize是什么?
phpize是用来扩展php扩展模块的,通过phpi
- Java虚拟机学习 - 对象引用强度
shuizhaosi888
JAVA虚拟机
本文原文链接:http://blog.csdn.net/java2000_wl/article/details/8090276 转载请注明出处!
无论是通过计数算法判断对象的引用数量,还是通过根搜索算法判断对象引用链是否可达,判定对象是否存活都与“引用”相关。
引用主要分为 :强引用(Strong Reference)、软引用(Soft Reference)、弱引用(Wea
- .NET Framework 3.5 Service Pack 1(完整软件包)下载地址
happyqing
.net下载framework
Microsoft .NET Framework 3.5 Service Pack 1(完整软件包)
http://www.microsoft.com/zh-cn/download/details.aspx?id=25150
Microsoft .NET Framework 3.5 Service Pack 1 是一个累积更新,包含很多基于 .NET Framewo
- JAVA定时器的使用
jingjing0907
javatimer线程定时器
1、在应用开发中,经常需要一些周期性的操作,比如每5分钟执行某一操作等。
对于这样的操作最方便、高效的实现方式就是使用java.util.Timer工具类。
privatejava.util.Timer timer;
timer = newTimer(true);
timer.schedule(
newjava.util.TimerTask() { public void run()
- Webbench
流浪鱼
webbench
首页下载地址 http://home.tiscali.cz/~cz210552/webbench.html
Webbench是知名的网站压力测试工具,它是由Lionbridge公司(http://www.lionbridge.com)开发。
Webbench能测试处在相同硬件上,不同服务的性能以及不同硬件上同一个服务的运行状况。webbench的标准测试可以向我们展示服务器的两项内容:每秒钟相
- 第11章 动画效果(中)
onestopweb
动画
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- windows下制作bat启动脚本.
sanyecao2314
javacmd脚本bat
java -classpath C:\dwjj\commons-dbcp.jar;C:\dwjj\commons-pool.jar;C:\dwjj\log4j-1.2.16.jar;C:\dwjj\poi-3.9-20121203.jar;C:\dwjj\sqljdbc4.jar;C:\dwjj\voucherimp.jar com.citsamex.core.startup.MainStart
- Java进行RSA加解密的例子
tomcat_oracle
java
加密是保证数据安全的手段之一。加密是将纯文本数据转换为难以理解的密文;解密是将密文转换回纯文本。 数据的加解密属于密码学的范畴。通常,加密和解密都需要使用一些秘密信息,这些秘密信息叫做密钥,将纯文本转为密文或者转回的时候都要用到这些密钥。 对称加密指的是发送者和接收者共用同一个密钥的加解密方法。 非对称加密(又称公钥加密)指的是需要一个私有密钥一个公开密钥,两个不同的密钥的
- Android_ViewStub
阿尔萨斯
ViewStub
public final class ViewStub extends View
java.lang.Object
android.view.View
android.view.ViewStub
类摘要: ViewStub 是一个隐藏的,不占用内存空间的视图对象,它可以在运行时延迟加载布局资源文件。当 ViewSt