UI中一些不常用的控件UIActivityIndicatorView、UIProgressView、UISegmentedControl、UIStepper、UISwitch、UITextView、UIAlertController
//UIActivityIndicatorView //小菊花,加载
#import "ActivityIndicatorVC.h"
@interface ActivityIndicatorVC (){
UIActivityIndicatorView *_activity ;
}
@end
@implementation ActivityIndicatorVC
-(void)viewDidLoad{
[super viewDidLoad];
[self createActivityIndicator];
}
-(void)createActivityIndicator{
//创建对象
_activity = [[UIActivityIndicatorView alloc]initWithFrame:CGRectMake(, , , )];
_activity.backgroundColor = [UIColor blackColor];
_activity.activityIndicatorViewStyle = UIActivityIndicatorViewStyleWhiteLarge;
[self.view addSubview:_activity];
//让状态栏中的activityIndicator显示出来
[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES];
//开始动画
[_activity startAnimating];
}
// 想要停止的话添加
// [_activity stopAnimating];
//[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO];
@end
45 // UIProgressView //进度条
#import "ProgressVC.h"
@implementation ProgressVC{
UIProgressView *_progress ;
NSTimer *_timer;
}
-(void)viewDidLoad{
[super viewDidLoad];
self.btn.hidden = YES;
[self createProgress];
[self createTimer];
}
-(void)createProgress{
_progress = [[UIProgressView alloc]initWithFrame:CGRectMake(, , , )];
[self.view addSubview:_progress];
// progress.backgroundColor = [UIColor lightGrayColor];
_progress.tintColor = [UIColor redColor];
_progress.progressTintColor = [UIColor greenColor];
_progress.trackTintColor = [UIColor blueColor];
_progress.progress = 0.01;
}
-(void)createTimer{
_timer = [NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(run ) userInfo:nil repeats:YES];
}
-(void)run{
_progress.progress += 0.01;
}
@end
90 // UISegmentedControl //分段
-(void)viewDidLoad{
[super viewDidLoad];
self.btn.hidden = YES;
[self createSegment];
}
-(void)createSegment{
NSArray *items = @[@"", @"", @""];
UISegmentedControl *segment = [[UISegmentedControl alloc] initWithItems:items];
segment.frame = CGRectMake(, , , );
segment.backgroundColor = [UIColor magentaColor];
segment.tintColor = [UIColor yellowColor];
segment.selectedSegmentIndex = ;
[segment insertSegmentWithTitle:@"" atIndex: animated:YES];
[segment insertSegmentWithImage:[UIImage imageNamed:@"tab_0"] atIndex: animated:YES];
//让图片显示原始图片
UIImage *img = [[UIImage imageNamed:@"tab_0"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
[segment insertSegmentWithImage:img atIndex: animated:YES];
[self.view addSubview:segment];
//添加事件
[segment addTarget:self action:@selector(segmentSelected:) forControlEvents:UIControlEventValueChanged];
}
-(void)segmentSelected:(UISegmentedControl *)segment{
NSLog(@"%ld", segment.selectedSegmentIndex);
}
//UIStepper //步进
-(void)viewDidLoad{
[super viewDidLoad];
self.btn.hidden = YES;
[self createStepper];
}
-(void)createStepper{
UIStepper *stepper =[[ UIStepper alloc]initWithFrame:CGRectMake(, , , )];
[self.view addSubview:stepper];
stepper.tintColor = [UIColor redColor];
stepper.backgroundColor = [UIColor greenColor];
stepper.minimumValue = ;
stepper.maximumValue = ;
stepper.stepValue = ;
stepper.wraps = YES;
stepper.autorepeat = YES;
[stepper addTarget:self action:@selector(steperValueChanged:) forControlEvents:UIControlEventValueChanged];
}
-(void)steperValueChanged:(UIStepper *)stepper{
NSLog(@"%f", stepper.value);
}
//UISwitch //开关
-(void)viewDidLoad{
[super viewDidLoad];
self.btn.hidden = YES;
[self createSwitch];
}
-(void)createSwitch{
UISwitch *mySwitch = [[UISwitch alloc]initWithFrame:CGRectMake(, , , )];
mySwitch.onTintColor = [UIColor redColor];
mySwitch.tintColor = [UIColor greenColor];
[self.view addSubview:mySwitch];
[mySwitch addTarget:self action:@selector(switchValueChanged:) forControlEvents:UIControlEventValueChanged];
}
-(void)switchValueChanged:(UISwitch *)mySwitch{
if (mySwitch.isOn) {
NSLog(@"on");
} else{
NSLog(@"off");
}
}
//UITextView //文本
-(void)viewDidLoad{
[super viewDidLoad];
self.btn.hidden = YES;
[self createTextView];
}
-(void)createTextView{
UITextView *textView = [[UITextView alloc]initWithFrame:CGRectMake(, , , )];
[self.view addSubview:textView ];
}
//UIAlertController //警报管理
- (void)btnClicked {
UIAlertController *alertCtrl = [UIAlertController alertControllerWithTitle:@"删除" message:@"是否确定要删除该数据" preferredStyle:UIAlertControllerStyleActionSheet];
UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:nil ];
UIAlertAction *deleteAction = [UIAlertAction actionWithTitle:@"删除" style:UIAlertActionStyleDestructive handler:^(UIAlertAction * _Nonnull action) {
NSLog(@"具体的删除数据的代码");
}];
[alertCtrl addAction:cancelAction];
[alertCtrl addAction:deleteAction];
[self presentViewController:alertCtrl animated:YES completion:nil];
}
- (void)btnClicked3 {
UIAlertController *alertCtrl = [ UIAlertController alertControllerWithTitle:@"警告" message:@"需要输入用户名和密码" preferredStyle:UIAlertControllerStyleAlert];
// 添加文本框
[alertCtrl addTextFieldWithConfigurationHandler:^(UITextField * _Nonnull textField) {
// 可以对文本框进行设置
textField.placeholder = @"用户名";
}];
[alertCtrl addTextFieldWithConfigurationHandler:^(UITextField * _Nonnull textField) {
textField.placeholder = @"密码";
textField.secureTextEntry = YES;
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(pwdTextChanged) name:UITextFieldTextDidChangeNotification object:textField];
}];
// 添加一个动作,就是一个按钮
UIAlertAction *action2 = [UIAlertAction actionWithTitle:@"登录" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) {
// 用户点击这个按钮的操作
NSLog(@"用户名:%@, 密码:%@", alertCtrl.textFields[].text , alertCtrl.textFields[].text );
}];
action2.enabled = NO;
[alertCtrl addAction:action2];
// 弹出提示信息框
[self presentViewController:alertCtrl animated:YES completion:nil];
}
-(void)pwdTextChanged{
// 取得弹出的UIAlertController对象
UIAlertController *alertCtrl = (UIAlertController *) self.presentedViewController;
if (alertCtrl) {
UIAlertAction *loginAction = alertCtrl.actions.firstObject;
loginAction.enabled = YES;
}
}
- (void)btnClicked2 {
UIAlertController *alertCtrl = [ UIAlertController alertControllerWithTitle:@"警告" message:@"电量低" preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction *action1 = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:nil];
UIAlertAction *action2 = [UIAlertAction actionWithTitle:@"知道了" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) {
NSLog(@"知道了");
}];
[alertCtrl addAction:action1];
[alertCtrl addAction:action2];
[self presentViewController:alertCtrl animated:YES completion:nil];
}
UI中一些不常用的控件UIActivityIndicatorView、UIProgressView、UISegmentedControl、UIStepper、UISwitch、UITextView、UIAlertController的更多相关文章
- webform中几个常用的控件
一,简单控件 1,Lable——标签:在网页中呈现出来的时候会变成span标签 属性:Text——标签上的文字 BackColor,ForeColor——背景色,前景色 Font——字体 Bold- ...
- swift系统学习控件篇:UIProgressView+NSTimer+UIstepper+UIAlertController
工作之余,学习下swift大法.把自己的学习过程分享一下.当中的布局很乱,就表在意这些细节了.直接上代码: UIProgressView+NSTimer+UIstepper UIStepper UIP ...
- 关于如何在 Unity 的 UI 菜单中默认创建出的控件 Raycast Target 属性默认为 false
关于如何在 Unity 的 UI 菜单中默认创建出的控件 Raycast Target 属性默认为 false 我们在 Unity 中通过 UI 菜单创建的各种控件,比如 Text, Image 等, ...
- 【风马一族_Android】第4章Android常用基本控件
第4章Android常用基本控件 控件是Android用户界面中的一个个组成元素,在介绍它们之前,读者必须了解所有控件的父类View(视图),它好比一个盛放控件的容器. 4.1View类概述 对于一个 ...
- .Net中使用无闪刷新控件时提示框不显示
今天做提示框的时候一直不显示,让我郁闷好久,晚上吃饭的时候问了同事一下,他给了一个思路, 他说可能是因为由于页面中的无闪刷新导致的结果:百度了一下真找到了解决方法 在页面中存在无闪刷新控件的时候提示框 ...
- ios开发中经常用到的控件
以下是按照使用频率对ios的控件进行罗列. 1.最常用的UI控件: UIButton (按钮).UILabel (文本标签).UITextField (文本输入框).UIImageView( 图片显示 ...
- Unity3D入门之GUI基础以及常用GUI控件使用(2)
1.GUI基础 (1)GUI部分是每帧擦除重绘的,只应该在OnGUI中绘制GUI,按钮:GUILayout.Button(“Hello”); 只读标签:GUILayout.Label() (2)修改控 ...
- VC++ 中滑动条(slider控件)使用 [转+补充]
滑动控件slider是Windows中最常用的控件之一.一般而言它是由一个滑动条,一个滑块和可选的刻度组成,用户可以通过移动滑块在相应的控件中显示对应的值.通常,在滑动控件附近一定有标签控件或编辑框控 ...
- 【转】ASP.NET常用数据绑定控件优劣总结
转自:http://www.cnblogs.com/Olive116/archive/2012/10/24/2736570.html ASP.NET常用数据绑定控件优劣总结 本文的初衷在于对Asp ...
随机推荐
- JS魔法堂:ASI(自动分号插入机制)和前置分号
一.前言 今晚在知乎看到百姓网前端技术专家——贺师俊对<JavaScript 语句后应该加分号么?>的回答,让我又一次看到大牛的风采,实在佩服万分.但单纯的敬佩是不足以回报他如此优秀的文字 ...
- SQL Server时间粒度系列----第3节旬、月时间粒度详解
本文目录列表: 1.SQL Server旬时间粒度2.SQL Server月有关时间粒度 3.SQL Server函数重构 4.总结语 5.参考清单列表 SQL Server旬时间粒度 ...
- MySQL 函数大全
mysql函数大全 对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL,返回NU ...
- jquery Ajax异步请求之session
写了一个脚本,如下: $(function () { $("#btnVcode").click(function () { var receiveMobile = $(" ...
- qt 自动产生 Guid 方法
strcpy(cmd->uid,QUuid::createUuid().toString().toStdString().c_str());
- iOS阶段学习第15天笔记(NSDictionary与NSMutableDictionary 字典)
iOS学习(OC语言)知识点整理 一.OC中的字典 1)字典:是一个容器对象,元素是以键-值对(key-value)形式存放的,key和value是任意类型的对象,key是唯一的,value可以重复 ...
- MEF入门之不求甚解,但力求简单能讲明白(五)
我们已经成功的达到了目标,大量减少了if else. 不过在园子里面的文章大多,用的是Import.ImportMany.So,修改主函数. using IPart; using System; us ...
- 孙鑫MFC学习笔记6:菜单编程
1.对菜单响应的顺序: 视类,文档类,框架类,应用程序类 2.消息的分类 3.CWnd继承自CCmdTarget类, 所以从CWnd派生出的类也可以接收WM_COMMAND消息 4.命令的消息路由 5 ...
- 【Java每日一题】20161115
package Nov2016; import java.io.Serializable; public class Ques1115 implements Serializable{ private ...
- 泛函编程(31)-泛函IO:Free Monad-Running free
在上节我们介绍了Free Monad的基本情况.可以说Free Monad又是一个以数据结构替换程序堆栈的实例.实际上Free Monad的功能绝对不止如此,以heap换stack必须成为Free M ...