文档章节

IOS 学习---UI控件

fengyun321
 fengyun321
发布于 2015/09/12 14:05
字数 382
阅读 26
收藏 0

UISwitch  UIActivityIndicatorView  UISegmentControl  UIAlertView的使用

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    self.view.backgroundColor = [UIColor lightGrayColor];
    
    /******UISwitch :开关****/
    
    //开关大小是固定的,设置宽高不会影响它的大小
    UISwitch *swith = [[UISwitch alloc]initWithFrame:CGRectMake(50, 50, 100, 100)];
    
    //swith.backgroundColor = [UIColor lightGrayColor];
    
    //设置当前开关是开的状态
    swith.on = YES;
    
    //绑定事件 只有开/关两个状态,对应两个值,状态的改变意味着值在变化
    [swith addTarget:self action:@selector(switchAction:) forControlEvents:UIControlEventValueChanged];
    
    [self.view addSubview:swith];
    
    
    /*******分段栏: UISegmentControl*********/
    //UISegmentedControl *segment = [[UISegmentedControl alloc]initWithFrame:CGRectMake(50, 180, 100, 100)];
    
    //初始化分栏的条目(标题)
    UISegmentedControl *segment = [[UISegmentedControl alloc]initWithItems:@[@"电影",@"美食",@"娱乐"]];
    
    segment.frame = CGRectMake(50, 180, 200, 50);
    
    //设置当前显示的栏目
    segment.selectedSegmentIndex = 0;
    
    //绑定事件,监听当前栏目的跳转
    [segment addTarget:self action:@selector(segmentAction:) forControlEvents:UIControlEventValueChanged];
    
    [self.view addSubview:segment];
    
    
    /******风火轮 :网络加载的提示*****/
    
    //设置frame不会改变显示大小
    UIActivityIndicatorView *indicatorView = [[UIActivityIndicatorView alloc]initWithFrame:CGRectMake(150, 50, 100, 100)];
    
    //设置样式,系统提供三种样式(大白色,白色,灰色)
    indicatorView.activityIndicatorViewStyle = UIActivityIndicatorViewStyleWhiteLarge;
    
    //只有开始转动才可以显示在屏幕上
    [indicatorView startAnimating];
    
    //[indicatorView stopAnimating];
    
    [self.view addSubview:indicatorView];
    
    
    /******UIAlertView*****/
    UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"是否要保存修改" message:@"更改配置" delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"确定", nil];
    
    //弹出视图,不需要加载,弹出视图的优先级比当前self.view要高
    [alertView show];
    
    
    
    
}

- (void)switchAction:(UISwitch *)swith
{
    if (swith.on == YES) {
        
        NSLog(@"打开4G");
        
    }
    
    
}


- (void)segmentAction:(UISegmentedControl *)segment
{
    //事件发生,切换页面/栏目
    NSLog(@"%ld",segment.selectedSegmentIndex); //--> 切换页面
    
}

#pragma mark - UIAlertViewDelegate
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
    NSLog(@"%ld",buttonIndex);
}



© 著作权归作者所有

fengyun321
粉丝 3
博文 31
码字总数 16462
作品 0
海淀
程序员
私信 提问
QMUI iOS UI 框架正式发布

QMUI iOS QMUI iOS 是一个致力于提高项目 iOS UI 开发效率的解决方案,其设计目是用于辅助快速搭建一个具备基本设计还原效果的 iOS 项目,同时利用自身提供的丰富控件及兼容处理,让开发者能...

kayo5994
2017/01/03
3.9K
2
疯狂ios讲义之不使用界面布局文件开发UI界面

如果打算使用纯代码来开发UI界面,则不需要设计任何界面布局文件,没有界面布局文件,也就不再需要使用自定义的视图控制器。这样程序可以直接在应用程序委托对象的application: didFinishLau...

博文视点
2014/01/20
2.5K
7
一样的iOS开发程序员为什么有人4k有人40k?

前言 移动开发真正火起来其实就是最近这几年,iOS 开发技术因为发展也就才这么几年,所以值得做的事情还有很多,这就造成了每年苹果的 WWDC 都会推出一堆新的特性和 API。整体上来说,这对业...

原来是泽镜啊
2018/05/16
6
1
SwiftUI or Flutter ?

原文作者:ZacJj 原文地址:https://juejin.im/post/5d05b45bf265da1bcc193ff4 前言 相信每一个见到 SwiftUI 的开发者,都会立刻将这门船新的 UI 框架和 Flutter 联系到一起。是的,它们身上...

iOS开发_小迷糊
06/19
0
0
iOS 流式布局 UI 框架 CocoaUI 开源了!

CocoaUI 是一个强大的 iOS UI 框架,使用 Web 开发者熟悉的 HTML+CSS 流式布局方式,轻松地开发 iOS 原生 App 的界面。CocoaUI 的特性主要包括: 高效的原生界面, 非低效的 WebView 控件方式...

ideawu
2015/06/17
11.4K
9

没有更多内容

加载失败,请刷新页面

加载更多

聊聊nacos的notifyConfigInfo

序 本文主要研究一下nacos的notifyConfigInfo CommunicationController nacos-1.1.3/config/src/main/java/com/alibaba/nacos/config/server/controller/CommunicationController.java @Cont......

go4it
昨天
2
0
队列-顺序(c/c++实现)

队列是在线性表功能稍作一改形成的,在生活中排队是不能插队的吧,先排队先得到对待,慢来得排在最后面,这样来就形成了”先进先出“的队列。 队列(顺序)实现的三个步骤: 定义所需的功能(...

白客C
昨天
5
0
安装tomcat部署网站/nginx代理tomcat/tomcat部署多个网站

来源:https://blog.csdn.net/Powerful_Fy 安装jdk: Oracle官方下载 https://www.oracle.com/technetwork/java/javase/downloads/index.html yum安装openjdk: 1.查找可使用的jdk包: [roo......

asnfuy
昨天
4
0
Linux 安装 Android studio

官网下载linux 版本 android xxxxx-xxxx.tar.gz 然后 找到它 解压缩 得到 android-studio文件夹 执行 [root@monkey java]# mv ./android-studio /opt [root@monkey java]# cd /opt/android-s......

MrLins
昨天
6
0
VMware vSphere虚拟机的迁移

VMware vSphere 6.7下,虚拟机的迁移按照移动的内容,可以分为4种: 1)冷迁移(cold migration) 2)热迁移(vMotion) 3)存储热迁移(storage vMotion) 4)完全热迁移(shared-nothing ...

大别阿郎
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部