Swift -Login(MVC 纯代码)
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #000000 }
span.s1 { }
span.s2 { color: #c42275 }
span.s3 { color: #c81b13 }
span.s4 { font: 24.0px "PingFang SC"; color: #c81b13 }
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #1e9421 }
span.s1 { }
span.s2 { font: 24.0px "PingFang SC" }
//Swift 提醒框
let alert = UIAlertController(title:"提示", message:"用户名或密码错误", preferredStyle: .alert)
let cancel = UIAlertAction(title: "取消", style: .cancel, handler: { (action) in
print("-------222222222222")
})
let ok = UIAlertAction(title: "确定", style: .default, handler: { (action) in
print("-----------11111111")
})
alert.addAction(cancel)
alert.addAction(ok)
self.present(alert, animated: true, completion: nil)
//登录界面的View视图
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #000000 }
p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #000000; min-height: 28.0px }
p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #703daa }
p.p4 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #294c50 }
p.p5 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #c81b13 }
p.p6 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #539aa4 }
span.s1 { color: #c42275 }
span.s2 { }
span.s3 { color: #6122ae }
span.s4 { color: #703daa }
span.s5 { color: #000000 }
span.s6 { color: #3e1e81 }
span.s7 { color: #539aa4 }
span.s8 { color: #c81b13 }
span.s9 { font: 24.0px "PingFang SC"; color: #c81b13 }
span.s10 { color: #0435ff }
import UIKit
class LoginView: UIView {
var nameTextfiled :UITextField!
var passworkTextfiled :UITextField!
var loginButton:UIButton!
var register : UIButton!
override init(frame : CGRect)
{
super.init(frame: frame)
self.backgroundColor = UIColor .red
creatNameTextfiled()
creatPassworkTextfiled()
creatLoginBtn()
creatRegisterBtn()
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
func creatNameTextfiled() {
nameTextfiled = UITextField()
nameTextfiled.placeholder = "输入用户名"
nameTextfiled.frame = CGRect(x: 20, y: 200, width: 335, height: 40)
nameTextfiled.backgroundColor = UIColor.gray
self.addSubview(nameTextfiled)
}
func creatPassworkTextfiled() {
passworkTextfiled = UITextField()
passworkTextfiled.placeholder = "输入密码"
passworkTextfiled.frame = CGRect(x: 20, y: 260, width: 335, height: 40)
passworkTextfiled.backgroundColor = UIColor.gray
self.addSubview(passworkTextfiled)
}
func creatLoginBtn() {
loginButton = UIButton()
loginButton.frame = CGRect(x: 20, y: 320, width: 100, height: 30)
loginButton.setTitle("登录", for: .normal)
loginButton.backgroundColor = UIColor.gray
self.addSubview(loginButton)
}
func creatRegisterBtn() {
register = UIButton()
register.frame = CGRect(x: 255, y: 320, width: 100, height: 30)
register.setTitle("注册", for: .normal)
register.backgroundColor = UIColor.gray
self.addSubview(register)
}
}
//登录的Controller控制器
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #000000 }
p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #000000; min-height: 28.0px }
p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #6122ae }
p.p4 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #703daa }
p.p5 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #539aa4 }
p.p6 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #c81b13 }
p.p7 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px "PingFang SC"; color: #1e9421 }
span.s1 { color: #c42275 }
span.s2 { }
span.s3 { color: #000000 }
span.s4 { color: #3c828b }
span.s5 { color: #3e1e81 }
span.s6 { color: #6122ae }
span.s7 { color: #539aa4 }
span.s8 { color: #703daa }
span.s9 { color: #0435ff }
span.s10 { color: #294c50 }
span.s11 { font: 24.0px Menlo; color: #000000 }
span.s12 { font: 24.0px Menlo }
span.s13 { color: #c81b13 }
span.s14 { font: 24.0px "PingFang SC"; color: #c81b13 }
span.s15 { font: 24.0px "PingFang SC" }
import UIKit
class LoginViewController: UIViewController ,UITextFieldDelegate {
var codeV = LoginView()
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = UIColor.white
codeV = LoginView(frame: CGRect( x:0,y:0,width:375,height:667))
codeV.nameTextfiled.delegate = self
codeV.passworkTextfiled.delegate = self
codeV.loginButton.addTarget(self, action: #selector(LoginViewController.loginEvent), for: .touchUpInside)
codeV.register.addTarget(self, action: #selector(LoginViewController.registerEvent(textFd:)), for: .touchUpInside)
self.view.addSubview(codeV)
}
func loginEvent () {
print("==========")
}
func registerEvent(textFd :UITextField ) {
print("------------")
let reginserVc = RegisterViewController()
self.navigationController?.pushViewController(reginserVc, animated:true)
}
//编辑结束时调用的方法
func textFieldDidEndEditing(_ textField: UITextField) {
if textField.placeholder == "输入用户名" {
print("=========获得用户名")
}else{
print("=========获得密码")
}
}
Swift -Login(MVC 纯代码)的更多相关文章
- swift 之 纯代码创建 cell
初学swift 但是网上只有很多swift用xib创建的cell,就算是有也不是我想要的.今天自己弄了一个不用xib纯代码写的,来上代码 博客地址: https://github.com/liguol ...
- swift 纯代码自定义控件
1.创建自定义控件 import UIKit class CustomView: UIView { var lab:UILabel! var btn:UIButton! /************ 将 ...
- IOS之UI--小实例项目--添加商品和商品名(纯代码终结版)
前言:这个小实例项目是完完全全以MJ视频传授的优化方案一步一个思路从零开始敲出代码的,而且每一步都有思路,都有逻辑所以然.敲代码讲究思路,我个人不建议记忆太多东西,反正我记性很差的. 小贴士:文章末尾 ...
- iOS高仿app源码:纯代码打造高仿优质《内涵段子》
iOS高仿app源码:纯代码打造高仿优质<内涵段子>收藏下来 字数1950 阅读4999 评论173 喜欢133 Github 地址 https://github.com/Charlesy ...
- 史上比较用心的纯代码实现 AutoLayout
入职有两三个月了吧,都是使用 Objective-C 纯代码(虽然有时候偷偷参杂一些 Swift 开源库)来编写公司APP,写布局的时候几乎都是要么在初始化的时候用 initWithFrame,要么就 ...
- iOS开发——OC篇&纯代码退出键盘
关于iOS开发中键盘的退出,其实方法有很多中,而且笔者也也学会了不少,包括各种非纯代码界面的退出. 但是最近开始着手项目的时候却闷了,因为太多了,笔者确实知道有很多中方法能实现,而且令我影响最深的就是 ...
- 搭建App主流框架_纯代码搭建(OC)
转载自:http://my.oschina.net/hejunbinlan/blog/529778?fromerr=EmSuX7PR 搭建主流框架界面 源码地址在文章末尾 达成效果 效果图 注:本文部 ...
- 纯代码编写qt登录界面(转)
1. 新建Qt Widgets Application,项目名称为login1,在类信息页面保持类名和基类为MainWindow和QMainWindow不变,取消选择创建界面选项,如下图所示. ...
- AJ学IOS(17)UI之纯代码自定义Cell实现新浪微博UI
AJ分享,必须精品 先看效果图 编程思路 代码创建Cell的步骤 1> 创建自定义Cell,继承自UITableViewCell 2> 根据需求,确定控件,并定义属性 3> 用get ...
随机推荐
- Kali v2.1.2 for Raspberry Pi 3B
最新的下载地址是: https://www.offensive-security.com/kali-linux-arm-images/ 按照官网的说法是找不到树莓派版本的SHA1SUM和SHA1SUM ...
- yii2 随笔
view 1.添a标签 use yii\helpers\Html; //需要引用html组件 <?= Html::a('点击', ['sign/sign','id' => '01']) ? ...
- QString::arg的用法
1.用法示例1 String str = QString("%1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11").arg("1"," ...
- Monthly Income Report – August 2016
原文链接:https://marcoschwartz.com/monthly-income-report-august-2016/ Every month, I publish a report of ...
- STM32C8T6 JTAG使用到PB3|PB4|PA13|PA14|PB15端口做普通IO时,需禁止JTAG!
GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIO ...
- 刷新页面时 select值保持不变
刷新页面时,要使下拉菜单(select).raido保持不变,用ajax是无法实现的.我想只能通过cookies才能实现.刷新前先把select或radio的值保存在cookies中,刷新后再填回去. ...
- SCNU ACM 2016新生赛初赛 解题报告
新生初赛题目.解题思路.参考代码一览 1001. 无聊的日常 Problem Description 两位小朋友小A和小B无聊时玩了个游戏,在限定时间内说出一排数字,那边说出的数大就赢,你的工作是帮他 ...
- Spring之BeanFactory及Bean生命周期
1.spring通过BeanFactory灵活配置.管理bean,Spring对管理的bean没有任何特别的要求,完全支持对POJO的管理: 2.BeanFactory有个ApplicationCon ...
- 04讲 正确使用heterogeneous类型的元件
heterogeneous类型的元件1.可能出现的错误 再使用数个heterogeneous 元件的时候会因为分部件的不匹配 2.出现错误的原因原因是这四个运放,软件它并不识别那两个是配在一起 ...
- mongodb集群安装及到现在遇到的一些问题
集群搭建 只有3台服务器,开始搭建mongodb集群里主要参照的是http://www.lanceyan.com/tech/arch/mongodb_shard1.html,端口的设置也是mongos ...