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 ...
随机推荐
- CSS魔法堂:再次认识font
一.前言 文字承载着站点内涵,而良好的字体.排版则为用户提供舒适的阅读体验.本文打算对字体稍微深入一下子网页字体的内容,若有纰漏请大家指正,谢谢! 目录一坨: 二, 字体分类 1. 衬线体(Serif ...
- 【C#】递归搜索指定目录下的指定项目(文件或目录)
---------------更新:201411201121--------------- 主要更新说明:将原bool recurse参数改为int depth,这样可以指定递归深度,而不是笼统的是否 ...
- SQL SERVER与C#中数据类型的对应关系
对应关系表 SQL Server2000 http://hovertree.com/menu/sqlserver/ C# CodeSmith 数据类型 取值范围 数据类型 取值范围 空值代替值 数据类 ...
- Kinect V2 基础教程之彩色图像
本程序为自己所写,参考素材包括微软官方例子和外文资料,自己做了部分的优化.解释的如果有问题,恳请大家指正. 后台代码: using System.ComponentModel; using Syste ...
- PowerDesigner中Table视图怎样同时显示Code和Name
1.创建一个简单table视图步骤: 1)打开软件,创建model,选择Physical Data
- ServletContext中常用方法介绍
一..获取Tomcat的Context的初始化参数.1.获取Tomcat的server.xml中设置Context的初始化参数.例如: <Context path="/testcont ...
- Android异步回调中的UI同步性问题
Android程序编码过程中,回调无处不在.从最常见的Activity生命周期回调开始,到BroadcastReceiver.Service以及Sqlite等.Activity.BroadcastRe ...
- WebSocket 学习笔记--IE,IOS,Android等设备的兼容性问题与代码实现
一.背景 公司最近准备将一套产品放到Andriod和IOS上面去,为了统一应用的开发方式,决定用各平台APP嵌套一个HTML5浏览器来实现,其中数据通信,准备使用WebSocket的方式.于是,我开始 ...
- JavaScript学习(1):基础
这篇文章里,我们来聊一些JavaScript的基础知识. 1. 如何运行JavaScript? JavaScript是一种解释型的语言,它不需要提前编译.通常情况下,JavaScript会放在网页中, ...
- Dense.js - 响应式的视网膜(Rtina)图像支持
Dense 是一款 jQuery 插件,它提供一个简单的方法为设备提供精密像素比的图像,为你的网站带来视网膜支持,清除模糊,图像更清晰.通过简单地包括 jQuery 插件的页面上,就能实现响应式的视网 ...