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 ...
随机推荐
- React Native知识10-ListView组件
ListView - 一个核心组件,用于高效地显示一个可以垂直滚动的变化的数据列表.最基本的使用方式就是创建一个ListView.DataSource数据源,然后给它传递一个普通的数据数组,再使用数据 ...
- 记录一次Quartz2D学习(五)
(四)内主要讲了绘制状态的保存与恢复 本次主要讲述 缩放,旋转,平移等操作 5.附加操作 5.1 旋转 TIP: 旋转操作主要是对本次渲染的图层进行旋转,旋转的中心为左上角顶点 - (void)dra ...
- jquery ajax异步和同步从后天取值
最近使用jquery的ajax,发现有些效果不对,ajax请求后返回的json串回来了,但是执行顺序有问题. var isReload = false; $.post('/home/DetectCac ...
- python迭代器实现斐波拉契求值
斐波那契数列(Fibonacci sequence),又称黄金分割数列,也称为"兔子数列":F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)(n≥2,n∈N*).例 ...
- WinCE项目应用之车载导航
WinCE车载导航系统是我过去几年投入精力比较多的一个项目.我的主要工作内容是BSP的移植.硬件模块的调试和WinCE系统的深度定制.如TDA7415驱动.TDA7415均衡器.慧翰车载蓝牙模块.华为 ...
- angularJS(4)
angularJS(4) 一:angulaJs的作用域scope Scope(作用域) 是应用在 HTML (视图) 和 JavaScript (控制器)之间的纽带.scope 是一个 JavaScr ...
- C语言的fopen函数(文件操作/读写)
头文件:#include <stdio.h> fopen()是一个常用的函数,用来以指定的方式打开文件,其原型为: FILE * fopen(const char * path, c ...
- 树上启发式合并 (dsu on tree)
这个故事告诉我们,在做一个辣鸡出题人的比赛之前,最好先看看他发明了什么新姿势= =居然直接出了道裸题 参考链接: http://codeforces.com/blog/entry/44351(原文) ...
- centos系统编译安装nginx+php环境另加独立mysql教程
以前看过的安装nginx+php环境都带了mysql数据库了,这个是因为很多站长都是nginx+php+mysql都在同一台服务器了,那么今天我们是单独处理了,一个是nginx+php环境,然后mys ...
- weblogic的集群与配置
目录(?)[-] 1.Weblogic的集群 2.创建Weblogic集群前的规划 3.开始创建我们的Weblogic集群 1.1 创建集群的总控制端aminserver 2.2 创建集群中的节点my ...