- Objective-C使用UISwitch控制UITextField显示明文或密文
林鸿群
Objective-Cobjective-cios开发语言
1.xib中设计2.关联控件3.使用代码控制开关与TextField显示模式4.开关控件UISwitch点击事件实现,点击时根据状态切换TextField显示模式5.显示效果:
- Spring Animation弹簧动画
RichieQ
一、简介SpringAnimation是一种特殊的动画曲线,自从iOS7开始被广泛应用在系统动画中,包括App文件夹打开/关闭效果、键盘弹出效果、UISwitch控件的开关效果、不同ViewController之间的Push动画、Modal出现和消失的动画、Siri的出现和消失动画spring-1.gif二、用法如下[UIViewanimateWithDuration:2delay:0usingS
- 4.6 UISwitch开关控件的使用 [iOS开发-Xcode教程]
互动教程网
1.在欢迎窗口右侧的历史项目列表中,双击打开之前创建的单视图项目模板。image2.本节课将为您演示开关控件的基本用法。首先在一个空白项目中,打开视图控制器的代码文件。image3.接着开始编写代码,实现这项功能。image4.创建一个位置在(130,100),尺寸为(0,0)的显示区域。image5.初始化开关对象,并指定其位置和尺寸。image6.设置开关对象的默认状态为选中。image7.给
- 我的代码我的坑(十) —— iOS9 Xib实例化的UITableViewCell中UIButton和UISwitch等控件的IBAction点击无响应的问题(一)
刀客传奇
版本记录版本号时间V1.02020.03.23星期一前言做了好几个APP,碰到了大大小小的很多坑,以前碰到坑,解决了就结束了,这里想把自己碰到的坑记录下来,一来给自己备查二来希望可以帮助到大家。感兴趣的可以关注下,也欢迎大家补充留言,感兴趣的看上面几篇文章。1.我的代码我的坑(一)——自签名证书导致请求取消的问题(一)2.我的代码我的坑(二)——UIImageView动画点击后动画和图片消失的问题
- SwiftUI实战之设置Toggle开关的背景颜色和切换效果
iCloudEnd
本文价值与收获看完本文后,您将能够作出下面的界面
[email protected]基础知识当面对二进制决策或选择时,我们可以在SwiftUI中使用称为Toggle。这将在任一状态(开或关)显示切换,因为它可以在两种状态之间切换。iOS中的UISwitch组件具有相似的功能。在SwiftUI中使用Toggle的最简单方法是:我们需要
- 自定义 UISwitch 实现想要的样式
Charlin丶
这几天在做产品的时候,客户有个需求,开关按钮必须是这样的开关我尝试着去官方文档寻找一下UISwitch是否可以自定义图片来实现产品的需求,果不其然官方给出了两个属性。官方属性可以通过调用onImage或者offImage属性来设置开关的图片,但是这两个方法在iOS6之后已经被弃用掉了,所以只能重新自己封装一份代码来实现产品的需求。思路:1.设置一张图片,作为开关的底层背景图2.设置一张图片,作为开
- Flutter入门(49):Flutter 组件之 CupertinoSwitch 详解
Maojunhao
1.基本介绍CupertinoSwitch是iOS风格的switch开关,相当于UISwitch。switchoff.pngswitchon.png更多相关Switch插件可以看这里->Flutter入门(31):Flutter组件之Switch详解2.示例代码代码下载地址。如果对你有帮助的话记得给个关注,代码会根据我的Flutter专题不断更新。3.属性介绍CupertinoSwitch属性介绍
- 如何设置UISwitch的大小
kriri_2028
iOS控件iOSUISwitchswitch大小
很少用到Switch控件,即使用到也没去改它的大小,今天用到了发现setFrame方法并不能更改它的大小。UISwitch*sw=[[UISwitchalloc]initWithFrame:CGRectMake(200,15,50,15)];[swsetOn:YESanimated:YES];sw.transform=CGAffineTransformMakeScale(0.5,0.5);//缩放
- 滑动控件UISlider
孙卓卓
UISlider跟UISwitch有点儿类似,都是继承自UIControl既然UISlider是表示一个CGRange,那么就有一个最大值(maximumValue)和一个最小值(minimumValue),既然UISlider又是一个选择器,那么就有一个当前的选择值(value),这三个值都是UISlider的属性。同样的,UISlider选择器被改变时,会触发UIControlEventVal
- IOS UIswitch 自定义开关
sanguing
有时候我们可能不想或者不用系统提供的UISwitch进行布局,网上各种要么是swift的要么就是纯模仿的系统样式,不符合前面的需求.这里尝试用objective-c编写一个新手demo.基本还是满足一些特定的需求,代码质量好坏见谅,毕竟是刚研究不久.image.pngimage.png可调节参数1、开/关背景色2、按钮块开/关背景色3、开关的高度和宽度4、按钮块开/关图标(可以不显示)代码.h文件
- UISwitch的大小
BrianWang
iOS系统为UISwitch指定的大小是{51,31},直接设置UISwitch的宽高是无效的。代码如下:-(void)viewDidLoad{[superviewDidLoad];//Doanyadditionalsetupafterloadingtheview.UISwitch*aSwitch=[[UISwitchalloc]init];[self.viewaddSubview:aSwitch
- Switch 设置颜色
MJBaby
UISwitch设置自己想要的颜色,可以仿照以下处理[[self.defaultSwitchrac_signalForControlEvents:UIControlEventValueChanged]subscribeNext:^(__kindofUISwitch*_Nullablex){@strongify(self);if([xisEqual:self.defaultSwitch]){if(x
- iOS Swift RxSwift 的使用(三)
王 哪跑!!!
RxSwfitSwiftiOS
今天继续讲解RxSwift的使用。主要讲解UISwitch、UISegmentedControl、UISlider、UIStepper以及手势UIGestureRecognizer1、UISwitchUISwitch也是一个比较常用的控件,它主要就一个功能,开启关闭,所以他的RxSwift使用也是比较简单的,它的使用方式和UIButton不同,UISwitch不是点击事件,而是开启和关闭,所以它的
- Element-ui Switch 开关
前端
Element-uiSwitch开关原文链接:https://note.noxussj.top/?source=sifo通常用于切换开启和关闭状态。按需引入方式如果是完整引入可跳过此步骤importVuefrom'vue'import{Switch}from'element-ui'import'element-ui/lib/theme-chalk/base.css'import'element-u
- UIStepper 微调器
nalis风
外观和UISwitch相似包含+-按钮控制某个值得增,减UIControl基类1.Value:Minimum:最小值默认为0设为大于或等于maximumValue时,会报一个NSInvalidArgumentException异常Maximum:最大值默认为100同会报异常Current:UIStepper控件的当前值,对应于ValueStep:数值变化的补偿对应stepValue属性默认为12.
- Swift - 开关按钮(UISwitch)的用法
解码漫聊
如何创建开关,以及监听它值的改变,代码如下:importUIKitclassViewController:UIViewController{varstydySwitch:UISwitch!overridefuncviewDidLoad(){super.viewDidLoad()stydySwitch=UISwitch()//设置位置(开关大小无法设置)stydySwitch.center=CGPo
- 颜色选择器
championfu
自iOS13之后,苹果加入大量的UI类。以前我就抱怨过苹果的UI控件少,API死板的问题。iOS出现了两个UI类是关于颜色选择的。颜色选择的应用场景其实挺多的。如果自己去写也是可以的,但现在有现成的,功能设计又非常好,为什么不用呢?UIColorWellUIColorWell是一个继承UIControl的视图,它不能调整大小和UISwitch类似,大小大约是44*44。点击可弹出一个选择颜色的弹窗
- UISwitch的基本使用
frank_pang1995
开关一、头文件的定义#import@interfaceViewController:UIViewController{//定义一个开关控件,可以进行状态的改变//开:关:两种状态可以切换UISwitch*_mySwicth;}@property(retain,nonatomic)UISwitch*mySwitch;@end所有UIKit框架库中的控件均以UI开头,苹果官方的j控件都定义在UIKit
- RxSwift-MVVM
yahibo
MVVM.pngMVVM核心在于数据与UI的双向绑定,数据的变化会更新UI,UI变化会更新我们的数据。那这种绑定操作谁来做呢?当然是我们的RxSwift。学习RxSwift框架以来,似乎并没有真正使用过这个框架,下面就来看看,RxSwift具体能带来哪些便利。一、登录页面先看看效果:login.gifUI页面代码省略,下面只看数据UI是如何绑定的。1、UISwitch和UILabel的绑定swit
- RxSwift UI交互 - III
醉看红尘这场梦
接下来,我们继续实现上个视频中未完成的例子。首先来处理UISwitch和UISlider联动。对于UISwitch来说:当UISwitch为OFF时,表示用户不了解Swift,因此,下面的UISlider应该为0;当UISwitch为ON时,可以默认把UISlider设置在1/4的位置,表示大致了解;对于UISlider来说:当UISlider不为0时,应该自动把UISwitch设置为ON;当UI
- iOS应用内调用系统通知按钮控制是否接收推送消息
疯子_070e
UISwitch*switchButton=[[UISwitchalloc]initWithFrame:CGRectMake(SCREEN_WIDTH-55,8,20,10)];[[UNUserNotificationCentercurrentNotificationCenter]getNotificationSettingsWithCompletionHandler:^(UNNotificati
- UIKit基础 1课
波澜不惊的少年
在iOS系统的4个层中,我们主要面向的是CocoaTouch层CocoaTouch层中有个非常重要的UIKit框架,该框架为应用程序提供了各种可视化组件,如下所示:按钮(UIButton)开关(UISwitch)进度条(UIProgressView)CocoaTouch层中的其他框架,对于我们应用程序的开发而言,也是非常有用的!诸如:访问用户通信录的框架、获取照片信息的框架、负责加速感应器等硬件支
- iOS 自定义UISwitch OC Swift
时之谷
//OC版-(void)awakeFromNib{[superawakeFromNib];self.transform=CGAffineTransformMakeScale(0.5,0.5);self.layer.anchorPoint=CGPointMake(0,0.5);}//Swift版classSwitchButton:UISwitch{overridefuncawakeFromNib()
- 【Swift】iOS 开发入门参考手册
JinyaX
个人收集整理,供Swift入门学习者参考,随时更新!基础控件UILabel的用法UIButton的用法UITextField的用法UITextView的用法UISwitch的用法UISegmentedController-分段选择的使用UIImageView的用法UIProgressView的用法UISlider的用法UIPickerView的用法UIScrollView的用法UIDatePick
- 基础控件-->>UISwitch 详解
MrBrave丶彬彬
继基础控件UISlider之后,期待的UISwitch详细介绍-->>保证你有意外收获,如有问题欢迎指点。。1、UISwitch相关属性#######效果图D03D8470-B6A8-46BB-B81A-12000E4E6595.png#######代码//UISwitch的使用默认尺寸为79*27。UISwitch*oneSwitch=[[UISwitchalloc]initWithFrame:
- (七)UIControl
小白猿
本文系转载,原文地址为iOS触摸事件全家桶UIControl是系统提供的能够以target-action模式处理触摸事件的控件,iOS中UIButton、UISegmentedControl、UISwitch等控件都是UIControl的子类。当UIControl跟踪到触摸事件时,会向其上添加的target发送事件以执行action。值得注意的是,UIConotrol是UIView的子类,因此本身
- 哇 UISwitch开关控件的点击事件
ZLZ在笑
1.UISwitch:开关控件,继承与UIControl2.创建UISwitch3.开辟空间并指定位置和大小4.注意:这里frame只有orgin起作用,size使用的是系统默认的大小5.设置开关开启的颜色6.设置开关状态7.添加事件8.实现方法开启的颜色关闭时
- UIControl 知识归纳
小蘑菇2
UIControl是UIView的子类,当然也是UIResponder的子类。UIControl是诸如UIButton、UISwitch、UITextField等控件的父类,它本身也包含了一些属性和方法,但是不能直接使用UIControl类,它只是定义了子类都需要使用的方法。UIControl对象采用了一种新的事件处理机制,将前一节直接处理的触摸事件转换成简单操作,这样可以无需关心用户访问控件的具
- debugserver + lldb 动态调试
ZhongXi
以调试设备界面为例,改变背景颜色、获取VPN界面UISwitch控件响应事件.Mac通过ssh连接越狱设备,默认密码alpineNelson:
[email protected]启动Preferences进程,开启1234端口,等待任意IP地址的lldb接入#debugserver-xbackboard*:1234/Applications/Preferences.app/
- 【Swift3】指纹解锁
亲爱的大倩倩
项目说明1.初次登陆APP时,在设置完手势密码后弹框提示是否打开指纹解锁手势密码请参见文章:http://www.jianshu.com/p/96c9c4824e6e2.在设置中,通过UISwitch开关可以打开与关闭指纹解锁3.若打开了指纹解锁,则每次进入APP时可通过指纹进入3.APP退至后台10S后,再次进入需要指纹解锁才可进入思路在主控制器mainVC中添加完gestureView后,根据
- 桌面上有多个球在同时运动,怎么实现球之间不交叉,即碰撞?
换个号韩国红果果
html小球碰撞
稍微想了一下,然后解决了很多bug,最后终于把它实现了。其实原理很简单。在每改变一个小球的x y坐标后,遍历整个在dom树中的其他小球,看一下它们与当前小球的距离是否小于球半径的两倍?若小于说明下一次绘制该小球(设为a)前要把他的方向变为原来相反方向(与a要碰撞的小球设为b),即假如当前小球的距离小于球半径的两倍的话,马上改变当前小球方向。那么下一次绘制也是先绘制b,再绘制a,由于a的方向已经改变
- 《高性能HTML5》读后整理的Web性能优化内容
白糖_
html5
读后感
先说说《高性能HTML5》这本书的读后感吧,个人觉得这本书前两章跟书的标题完全搭不上关系,或者说只能算是讲解了“高性能”这三个字,HTML5完全不见踪影。个人觉得作者应该首先把HTML5的大菜拿出来讲一讲,再去分析性能优化的内容,这样才会有吸引力。因为只是在线试读,没有机会看后面的内容,所以不胡乱评价了。
- [JShop]Spring MVC的RequestContextHolder使用误区
dinguangx
jeeshop商城系统jshop电商系统
在spring mvc中,为了随时都能取到当前请求的request对象,可以通过RequestContextHolder的静态方法getRequestAttributes()获取Request相关的变量,如request, response等。 在jshop中,对RequestContextHolder的
- 算法之时间复杂度
周凡杨
java算法时间复杂度效率
在
计算机科学 中,
算法 的时间复杂度是一个
函数 ,它定量描述了该算法的运行时间。这是一个关于代表算法输入值的
字符串 的长度的函数。时间复杂度常用
大O符号 表述,不包括这个函数的低阶项和首项系数。使用这种方式时,时间复杂度可被称为是
渐近 的,它考察当输入值大小趋近无穷时的情况。
这样用大写O()来体现算法时间复杂度的记法,
- Java事务处理
g21121
java
一、什么是Java事务 通常的观念认为,事务仅与数据库相关。 事务必须服从ISO/IEC所制定的ACID原则。ACID是原子性(atomicity)、一致性(consistency)、隔离性(isolation)和持久性(durability)的缩写。事务的原子性表示事务执行过程中的任何失败都将导致事务所做的任何修改失效。一致性表示当事务执行失败时,所有被该事务影响的数据都应该恢复到事务执行前的状
- Linux awk命令详解
510888780
linux
一. AWK 说明
awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入、一个或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。
awk的处理文本和数据的方式:它逐行扫描文件,从第一行到
- android permission
布衣凌宇
Permission
<uses-permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES" ></uses-permission>允许读写访问"properties"表在checkin数据库中,改值可以修改上传
<uses-permission android:na
- Oracle和谷歌Java Android官司将推迟
aijuans
javaoracle
北京时间 10 月 7 日,据国外媒体报道,Oracle 和谷歌之间一场等待已久的官司可能会推迟至 10 月 17 日以后进行,这场官司的内容是 Android 操作系统所谓的 Java 专利权之争。本案法官 William Alsup 称根据专利权专家 Florian Mueller 的预测,谷歌 Oracle 案很可能会被推迟。 该案中的第二波辩护被安排在 10 月 17 日出庭,从目前看来
- linux shell 常用命令
antlove
linuxshellcommand
grep [options] [regex] [files]
/var/root # grep -n "o" *
hello.c:1:/* This C source can be compiled with:
- Java解析XML配置数据库连接(DOM技术连接 SAX技术连接)
百合不是茶
sax技术Java解析xml文档dom技术XML配置数据库连接
XML配置数据库文件的连接其实是个很简单的问题,为什么到现在才写出来主要是昨天在网上看了别人写的,然后一直陷入其中,最后发现不能自拔 所以今天决定自己完成 ,,,,现将代码与思路贴出来供大家一起学习
XML配置数据库的连接主要技术点的博客;
JDBC编程 : JDBC连接数据库
DOM解析XML: DOM解析XML文件
SA
- underscore.js 学习(二)
bijian1013
JavaScriptunderscore
Array Functions 所有数组函数对参数对象一样适用。1.first _.first(array, [n]) 别名: head, take 返回array的第一个元素,设置了参数n,就
- plSql介绍
bijian1013
oracle数据库plsql
/*
* PL/SQL 程序设计学习笔记
* 学习plSql介绍.pdf
* 时间:2010-10-05
*/
--创建DEPT表
create table DEPT
(
DEPTNO NUMBER(10),
DNAME NVARCHAR2(255),
LOC NVARCHAR2(255)
)
delete dept;
select
- 【Nginx一】Nginx安装与总体介绍
bit1129
nginx
启动、停止、重新加载Nginx
nginx 启动Nginx服务器,不需要任何参数u
nginx -s stop 快速(强制)关系Nginx服务器
nginx -s quit 优雅的关闭Nginx服务器
nginx -s reload 重新加载Nginx服务器的配置文件
nginx -s reopen 重新打开Nginx日志文件
- spring mvc开发中浏览器兼容的奇怪问题
bitray
jqueryAjaxspringMVC浏览器上传文件
最近个人开发一个小的OA项目,属于复习阶段.使用的技术主要是spring mvc作为前端框架,mybatis作为数据库持久化技术.前台使用jquery和一些jquery的插件.
在开发到中间阶段时候发现自己好像忽略了一个小问题,整个项目一直在firefox下测试,没有在IE下测试,不确定是否会出现兼容问题.由于jquer
- Lua的io库函数列表
ronin47
lua io
1、io表调用方式:使用io表,io.open将返回指定文件的描述,并且所有的操作将围绕这个文件描述
io表同样提供三种预定义的文件描述io.stdin,io.stdout,io.stderr
2、文件句柄直接调用方式,即使用file:XXX()函数方式进行操作,其中file为io.open()返回的文件句柄
多数I/O函数调用失败时返回nil加错误信息,有些函数成功时返回nil
- java-26-左旋转字符串
bylijinnan
java
public class LeftRotateString {
/**
* Q 26 左旋转字符串
* 题目:定义字符串的左旋转操作:把字符串前面的若干个字符移动到字符串的尾部。
* 如把字符串abcdef左旋转2位得到字符串cdefab。
* 请实现字符串左旋转的函数。要求时间对长度为n的字符串操作的复杂度为O(n),辅助内存为O(1)。
*/
pu
- 《vi中的替换艺术》-linux命令五分钟系列之十一
cfyme
linux命令
vi方面的内容不知道分类到哪里好,就放到《Linux命令五分钟系列》里吧!
今天编程,关于栈的一个小例子,其间我需要把”S.”替换为”S->”(替换不包括双引号)。
其实这个不难,不过我觉得应该总结一下vi里的替换技术了,以备以后查阅。
1
所有替换方案都要在冒号“:”状态下书写。
2
如果想将abc替换为xyz,那么就这样
:s/abc/xyz/
不过要特别
- [轨道与计算]新的并行计算架构
comsci
并行计算
我在进行流程引擎循环反馈试验的过程中,发现一个有趣的事情。。。如果我们在流程图的每个节点中嵌入一个双向循环代码段,而整个流程中又充满着很多并行路由,每个并行路由中又包含着一些并行节点,那么当整个流程图开始循环反馈过程的时候,这个流程图的运行过程是否变成一个并行计算的架构呢?
- 重复执行某段代码
dai_lm
android
用handler就可以了
private Handler handler = new Handler();
private Runnable runnable = new Runnable() {
public void run() {
update();
handler.postDelayed(this, 5000);
}
};
开始计时
h
- Java实现堆栈(list实现)
datageek
数据结构——堆栈
public interface IStack<T> {
//元素出栈,并返回出栈元素
public T pop();
//元素入栈
public void push(T element);
//获取栈顶元素
public T peek();
//判断栈是否为空
public boolean isEmpty
- 四大备份MySql数据库方法及可能遇到的问题
dcj3sjt126com
DBbackup
一:通过备份王等软件进行备份前台进不去?
用备份王等软件进行备份是大多老站长的选择,这种方法方便快捷,只要上传备份软件到空间一步步操作就可以,但是许多刚接触备份王软件的客用户来说还原后会出现一个问题:因为新老空间数据库用户名和密码不统一,网站文件打包过来后因没有修改连接文件,还原数据库是好了,可是前台会提示数据库连接错误,网站从而出现打不开的情况。
解决方法:学会修改网站配置文件,大多是由co
- github做webhooks:[1]钩子触发是否成功测试
dcj3sjt126com
githubgitwebhook
转自: http://jingyan.baidu.com/article/5d6edee228c88899ebdeec47.html
github和svn一样有钩子的功能,而且更加强大。例如我做的是最常见的push操作触发的钩子操作,则每次更新之后的钩子操作记录都会在github的控制板可以看到!
工具/原料
github
方法/步骤
- ">的作用" target="_blank">JSP中的作用
蕃薯耀
JSP中<base href="<%=basePath%>">的作用
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
- linux下SAMBA服务安装与配置
hanqunfeng
linux
局域网使用的文件共享服务。
一.安装包:
rpm -qa | grep samba
samba-3.6.9-151.el6.x86_64
samba-common-3.6.9-151.el6.x86_64
samba-winbind-3.6.9-151.el6.x86_64
samba-client-3.6.9-151.el6.x86_64
samba-winbind-clients
- guava cache
IXHONG
cache
缓存,在我们日常开发中是必不可少的一种解决性能问题的方法。简单的说,cache 就是为了提升系统性能而开辟的一块内存空间。
缓存的主要作用是暂时在内存中保存业务系统的数据处理结果,并且等待下次访问使用。在日常开发的很多场合,由于受限于硬盘IO的性能或者我们自身业务系统的数据处理和获取可能非常费时,当我们发现我们的系统这个数据请求量很大的时候,频繁的IO和频繁的逻辑处理会导致硬盘和CPU资源的
- Query的开始--全局变量,noconflict和兼容各种js的初始化方法
kvhur
JavaScriptjquerycss
这个是整个jQuery代码的开始,里面包含了对不同环境的js进行的处理,例如普通环境,Nodejs,和requiredJs的处理方法。 还有jQuery生成$, jQuery全局变量的代码和noConflict代码详解 完整资源:
http://www.gbtags.com/gb/share/5640.htm jQuery 源码:
(
- 美国人的福利和中国人的储蓄
nannan408
今天看了篇文章,震动很大,说的是美国的福利。
美国医院的无偿入院真的是个好措施。小小的改善,对于社会是大大的信心。小孩,税费等,政府不收反补,真的体现了人文主义。
美国这么高的社会保障会不会使人变懒?答案是否定的。正因为政府解决了后顾之忧,人们才得以倾尽精力去做一些有创造力,更造福社会的事情,这竟成了美国社会思想、人
- N阶行列式计算(JAVA)
qiuwanchi
N阶行列式计算
package gaodai;
import java.util.List;
/**
* N阶行列式计算
* @author 邱万迟
*
*/
public class DeterminantCalculation {
public DeterminantCalculation(List<List<Double>> determina
- C语言算法之打渔晒网问题
qiufeihu
c算法
如果一个渔夫从2011年1月1日开始每三天打一次渔,两天晒一次网,编程实现当输入2011年1月1日以后任意一天,输出该渔夫是在打渔还是在晒网。
代码如下:
#include <stdio.h>
int leap(int a) /*自定义函数leap()用来指定输入的年份是否为闰年*/
{
if((a%4 == 0 && a%100 != 0
- XML中DOCTYPE字段的解析
wyzuomumu
xml
DTD声明始终以!DOCTYPE开头,空一格后跟着文档根元素的名称,如果是内部DTD,则再空一格出现[],在中括号中是文档类型定义的内容. 而对于外部DTD,则又分为私有DTD与公共DTD,私有DTD使用SYSTEM表示,接着是外部DTD的URL. 而公共DTD则使用PUBLIC,接着是DTD公共名称,接着是DTD的URL.
私有DTD
<!DOCTYPErootSYST