IOS-UI基础学习 用户登录界面(-)

本节完成图(丑是丑了点,总归能看的啦)新手笔记,如果啥意见的请提出,一定及时沟通改正。

所包含的控件

UILabel

UITextField

UIButton

三个基础控件

结构:

  window - view - view(loginPage 这个打底界面纯粹是为了以后样式预留的)  

 1 #import <UIKit/UIKit.h>
 2
 3 @interface LoginPage : UIView
 4 {
 5     UIButton *btnlogin;                //登录按钮
 6     UIButton *btnregist;               //注册按钮
 7     UITextField *txtUsername;          //用户名输入框
 8     UITextField *txtPassword;          //密码输入框
 9     UILabel *lblUsername;              //用户名标签
10     UILabel *lblPassword;              //密码标签
11 }
12 @end
  1 //
  2 //  LoginPage.m
  3 //  BaseControl1
  4 //
  5 //  Created by computer on 15/11/23.
  6 //  Copyright © 2015年 computer. All rights reserved.
  7 //
  8
  9 #import "LoginPage.h"
 10 #define mainRect self.frame.size
 11 @implementation LoginPage
 12
 13 /**
 14  *  初始化界面
 15  *
 16  *  @param frame
 17  *
 18  *  @return
 19  */
 20 - (instancetype)initWithFrame:(CGRect)frame
 21 {
 22     if(self = [super initWithFrame:frame])
 23     {
 24         [self initializeWithLabel];
 25         [self initializeWithTextField];
 26         [self initializeWithButton];
 27     }
 28     return self;
 29 }
 30
 31 #pragma  mark 控件初始化
 32 /**
 33  *  初始化标签
 34  */
 35 - (void)initializeWithLabel
 36 {
 37     //设定标签坐标
 38     lblUsername = [[UILabel alloc]initWithFrame:CGRectMake(
 39                                      50,
 40                                      50,0,0)];
 41     [lblUsername setText:@"帐号:"];
 42     //设置标签带下根据文字内容调整
 43     [lblUsername sizeToFit];
 44
 45     lblPassword = [[UILabel alloc]initWithFrame:CGRectMake(
 46                                                            lblUsername.frame.origin.x,
 47                                                            lblUsername.frame.origin.y+40, 0, 0)];
 48     [lblPassword setText:@"密码:"];
 49     [lblPassword sizeToFit];
 50
 51     //将标签添加到
 52     [self addSubview:lblUsername];
 53     [self addSubview:lblPassword];
 54 }
 55
 56 /**
 57  *  初始化文本输入框
 58  */
 59 - (void)initializeWithTextField
 60 {
 61     txtUsername = [[UITextField alloc]initWithFrame:CGRectMake(
 62                                                                lblUsername.frame.origin.x+60,
 63                                                                lblUsername.frame.origin.y-2, 150, 25)];
 64     [txtUsername setPlaceholder:@"请输入用户名"];
 65     //设置文本清除模式 就是在输入的时候会在右边出现个 x 按钮,可以一键清除
 66     txtUsername.clearButtonMode = UITextFieldViewModeWhileEditing;
 67
 68     //背景色
 69     txtUsername.layer.backgroundColor = [[UIColor grayColor] CGColor];
 70
 71     txtPassword = [[UITextField alloc]initWithFrame:CGRectMake(
 72                                                                lblPassword.frame.origin.x+60,
 73                                                                lblPassword.frame.origin.y-2, 150, 25)];
 74     [txtPassword setPlaceholder:@"请输入密码"];
 75     txtPassword.clearButtonMode = UITextFieldViewModeWhileEditing;
 76     txtPassword.layer.backgroundColor = [[UIColor grayColor] CGColor];
 77     //设置为密码模式,就是输入字符会变成实心圆
 78     [txtPassword setSecureTextEntry:YES];
 79
 80
 81     [self addSubview:txtUsername];
 82     [self addSubview:txtPassword];
 83 }
 84
 85 /**
 86  *  初始化按钮
 87  */
 88 - (void)initializeWithButton
 89 {
 90     btnlogin = [[UIButton alloc]initWithFrame:CGRectMake(
 91                                                          lblPassword.frame.origin.x,
 92                                                          lblPassword.frame.origin.y+lblPassword.frame.size.height+40,
 93                                                          80, 30)];
 94     [btnlogin setTitle:@"登录" forState:UIControlStateNormal];
 95     [btnlogin setBackgroundColor:[UIColor grayColor]];
 96     [btnlogin setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted];
 97
 98     btnregist = [[UIButton alloc]initWithFrame:CGRectMake(
 99                                                           btnlogin.frame.origin.x+btnlogin.frame.size.width+50,
100                                                           btnlogin.frame.origin.y,80, 30)];
101     [btnregist setTitle:@"注册" forState:UIControlStateNormal];
102     //设置背景色
103     [btnregist setBackgroundColor:[UIColor grayColor]];
104     //设置在默认模式下标题
105     [btnregist setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted];
106
107
108     [self addSubview:btnlogin];
109     [self addSubview:btnregist];
110 }
111
112 #pragma  mark -
113 /**
114  *  触摸事件
115  *
116  *  @param touches
117  *  @param event
118  */
119 - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event
120 {
121     //设定文本框模式为非修改,就会让键盘消失
122     [self endEditing:NO];
123 }
124
125 @end
 1 //
 2 //  ViewController.m
 3 //  BaseControl1
 4 //
 5 //  Created by computer on 15/11/23.
 6 //  Copyright © 2015年 computer. All rights reserved.
 7 //
 8
 9 #import "ViewController.h"
10 #import "LoginPage.h"
11 #define mainRect self.view.frame.size
12
13 @interface ViewController ()
14
15 @end
16
17 @implementation ViewController
18
19 - (void)viewDidLoad {
20     [super viewDidLoad];
21     LoginPage *loginpage = [[LoginPage alloc]
22                             initWithFrame:CGRectMake(
23                                     mainRect.width/2-150,
24                                     mainRect.height/2-300,300,200)];
25     loginpage.backgroundColor = [UIColor clearColor];
26
27     [self.view addSubview:loginpage];
28 }
29
30 - (void)didReceiveMemoryWarning {
31     [super didReceiveMemoryWarning];
32     // Dispose of any resources that can be recreated.
33 }
34
35 @end
时间: 2024-10-10 06:57:01

IOS-UI基础学习 用户登录界面(-)的相关文章

很漂亮的用户登录界面HTML模板

<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head><meta charset="utf-8" /><title>很漂亮的用户登录界面HTML模板-柯乐义</title><base target="_blank" /><style>*{padding:0px;margin:0p

Android 用户登录界面

黑色10分钟,winxp和QQ账号全军覆灭 最近一朋友忘记QQ密码,听说可以自己找回,就上网去找,看到有QQ密码破解工具,就下载,浏览器提示软件不安全,但是为了找回密码,我按了运行,然后下载了QQ账号密码破解工具,运行,提示说账号没找到.我又下载一个破解工具,还是没有用. 于是我用另一个QQ账号登陆,提示密码错误.我觉得奇怪,这个QQ账号密码没有忘记的.跑到另一台机器登陆也是提示不能登陆,查找原因是密码被改动了.我想,难道运行破解工具盗取了QQ账号然后就修改密码?于是用另外一个QQ账号登陆,谢天

面向对象-基础实现用户登录验证

使用初始化参数的方法输入用户名密码实现基础的用户登录功能. 实现一:基本功能实现 public class Test3 { public static void main(String[] args) { if(args.length != 2){ System.out.println("您输入的参数不合法"); System.out.println("格式为:admin 123 用户名 密码"); System.exit(1); } String name = a

jQuery和CSS3炫酷GOOGLE样式的用户登录界面

这是一款使用jQuery和CSS3打造的GOOGLE样式的用户登录界面特效.该登录界面特效中,右上角的小问号和错误提示小图标使用SVG来制作,用户名和密码输入框采用浮动标签特效,可点击的按钮上使用了很酷的点击波特效. 整个登录界面简洁大方,互动性很强. 在线演示:http://www.htmleaf.com/Demo/201503131515.html 下载地址:http://www.htmleaf.com/jQuery/Form/201503131514.html

C#: 用户登录界面设计

1. 在主界面loading的时候创建一个dictionary,从用户文件中加载用户信息 1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using System.Drawing; 6 using System.Linq; 7 using System.Text; 8 using System.Windows.Forms; 9 usi

ios开发-UI基础-应用管理(单纯界面)改进4-xib封装

[注意]转载请注明出处:吃唐僧肉的小悟空http://www.cnblogs.com/hukezhu/ 上篇文章结尾介绍了一下为什么要对xib进行封装,这里不再赘述. 大体整理了一下封装的思路(我自己的想法,可能不是很清晰): 为了扩展,将xib的代码封装,创建一个类,来描述xib >在新建的.m文件中,新建一个类扩展(类似于viewController) >在新建的.h文件中,加入一个模型的属性(@class) >在新建的.m文件中,重写模型的set方法(在.h文件中已经加入了,自动生

ios开发-UI基础-应用管理(单纯界面)改进5-使用代理实现监听下载按钮的点击(delegate)

[注意]转载时请注明出处博客园-吃唐僧肉的小悟空http://www.cnblogs.com/hukezhu/ 前几篇文章介绍了一个应用管理的小应用,从最开始的单纯实现功能,一步一步就行改进\封装,上篇文章是使用xib进行了优化,本篇文章使用代理实现监听下载按钮的点击. 在原来的基础上,使用代理的主要思路分析: 首先要新建一个协议 声明协议的要实现的方法(一般为optional) 声明一个遵守该协议的代理的属性 使用代理,通知其代理完成操作 在代理中的实现步骤: 遵守协议 设置代理(一般通过拖线

ios开发-UI基础-应用管理(单纯界面)改进2

本篇文章,通过字典转模型来改进上篇文章中的代码. 字典转模型,之前的文章已经介绍过,这里再重复一下:  字典转模型 字典:用来存储数据的,用键值对存储数据,是一个nsdictionary ,(不好处:key值容易写错) 模型: 用来存储数据的,一个字典对应一个模型,模型用属性来存储数据,是一个纯洁的object对象 @property(nonatomic,copy)NSString *name; @property(nonatomic,copy)NSString *icon; 字典转模型:一个字

ExtJS4.2学习(22)登录界面

现在开始我们来慢慢完善这个系统,今天做一个登录界面,此套系统已经开始慢慢加入Java各种框架,或者后期我会自己定义合适的框架,让它可以完整的跑下来. 今天做的是用window包裹panel,panel再包裹tabpanel实现的:先来看看今天做的效果图: login.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"