http://blog.sina.com.cn/s/blog_93c533fb0102veiq.html
※ 选择题(共25题,每题3分)
1、
当程序从后台将要重新回到前台的时候,会先执行以下哪个方法:
答案:(B)
A、- (void)applicationDidFinishLaunching:(UIApplication*)application{ }
B、- (void)applicationWillEnterForeground:(UIApplication *)application{ }
C、- (void)applicationDidBecomeActive:(UIApplication *)application{ }
D、 - (void)applicationWillTerminate:(UIApplication *)application{ }
2、
对于UISearchBar,要实现实时搜索(即搜索内容实时发生变化时),会执行以下哪个方法:
答案:(C)
A、- (void)searchBarTextDidEndEditing:(UISearchBar *)searchBar;
B、- (BOOL)searchBarShouldEndEditing:(UISearchBar *)searchBar;
C、- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText{ }
D、- (void)searchBarResultsListButtonClicked:(UISearchBar *)searchBar{ }
3、
以下的代码会出现什么问题:@implementation Person- (void)setAge:(int)newAge { self.age = newAge;}@end
答案:(B)
A、会造成循环引用
B、会造成死循环
C、会出现内存泄露
D、会出现野指针
4、
以下不属于ios中实现多线程的方法是:
答案:(D)
A、NSThread
B、NSOperationQueue
C、Grand Central Dispatch(GCD)
D、NSURLRequest
5、
以下对多线程开发的理解错误的是:
答案:(B)
A、发挥多核处理器的优势,并发执行让系统运行的更快、更流畅,用户体验更好
B、多线程程序中,一个进程包含2个以上的线程(含2个)
C、大量的线程降低代码的可读性,但不需要更多的内存空间
D、当多个线程对同一个资源出现争夺的时候要注意线程安全的问题
6、
下面对UIView、UIWindow和CALayer理解错误的是:
答案:(C)
A、UIView继承于UIResponder
B、UIResponder继承于NSObject,UIView可以响应用户事件。
C、UIResponder继承与NSObject,CALayer继承于NSObject,CALayer可以响应事件。
D、UIView是用来显示内容的,可以处理用户事件,CALayer是用来绘制内容的,依赖与UIView来进行显示
7、
对于UIScrollViewController,scrollView将开始降速时,执行的方法是:
答案:(D)
A、- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView;{ }
B、- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView;{ }
C、- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView;{ }
D、- (void)scrollViewWillBeginDecelerating:
8、
对于UICollectionViewController,实现定义每个元素的margin(边缘 上-左-下-右) 的方法是:
答案:(B)
A、
- (CGSize)collectionView:(UICollectionView *)collectionView
layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath
{
return CGSizeMake();
}
B、
- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView
layout:(UICollectionViewLayout*)collectionViewLayout insetForSectionAtIndex:(NSInteger)section
{
return UIEdgeInsetsMake();
}
C、
- (CGSize)collectionView:(UICollectionView *)collectionView
layout:(UICollectionViewLayout*)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section
{
return CGSizeMake();
}
D、
- (CGSize)collectionView:(UICollectionView *)collectionView
layout:(UICollectionViewLayout*)collectionViewLayout referenceSizeForFooterInSection:(NSInteger)section
{
return CGSizeMake();
}
9、
在MVC框架中,M与C通讯,通常使用什么方式?//M与C K与C都是通过KVO方式通讯
答案:(A)
A、KVO与通知
B、协议-代理
C、类目
D、属性
10、
以下关于导航栏外观属性对应的解释错误的是:
答案:(D)
A、barStyle bar的样式
B、translucent bar的透明度
C、backgroundImage bar的背景图片
D、barTintColor bar上控件的颜色 //改变导航栏的颜色
11、
实现一个singleton的类,下面正确的是:
答案:(A)
A、
static LOSingleton * shareInstance;
+ ( LOSingleton *)sharedInstance{
@synchronized(self){
if (shareInstance == nil) {
shareInstance = [[self alloc] init];
}
}
return shareInstance;
}
B、
static LOSingleton * shareInstance;
- ( LOSingleton *)sharedInstance{
@synchronized(self){
if (shareInstance == nil) {
shareInstance = [[self alloc] init];
}
}
return shareInstance;
}
C、
+ (LOSingleton *) sharedInstance
{
LOSingleton *sharedInstance = nil ;
static dispatch_once_t onceToken;
dispatch_once (& onceToken, ^ {
sharedInstance = [[self alloc] init];
});
return sharedInstance;
}
D、
- (LOSingleton *) sharedInstance
{
static LOSingleton *sharedInstance = nil ;
static dispatch_once_t onceToken;
dispatch_once (& onceToken, ^ {
sharedInstance = [[self alloc] init];
});
return sharedInstance;
}
12、
以下哪个方法在当程序将要退出时被调用,且通常在此方法里写一些用来保存数据和一些退出前的清理工作。
答案:(B)
A、- (void)applicationExitsOnSuspend:(UIApplication *)application{ }
B、- (void)applicationDidEnterBackground:(UIApplication *)application{ }
C、- (void)applicationWillTerminate:(UIApplication *)application{ }
D、- (void)applicationDidFinishLaunching:(UIApplication *)application{ }
13、
获取tableview正在window上显示的cell的indexPath方法是:
答案:(B)
A、- (UITableViewCell *)cellForRowAtIndexPath:(NSIndexPath *)indexPath;
B、- (NSArray *)indexPathsForVisibleRows;
C、- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;
D、- (void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath;
14、
下面关于深拷贝与浅拷贝理解正确的是:
答案:(A)
A、深拷贝拷贝的是内容,浅拷贝拷贝的是指针。
B、深拷贝和浅拷贝最大的区别就是子类对象的地址是否改变。
C、深拷贝是对对象本身复制,但是不对对象的属性进行复制。
D、如果子类对象的地址改变那么就是深拷贝。
15、
很多内置类如UITableViewController的delegate属性都是assign而不是retain,这是为了:
答案:(D)
A、防止造成内存泄露
B、防止出现野指针
C、防止出现过度释放
D、防止循环引用
16、
关于OC内存管理方面说法错误的是:
答案:(B)
A、OC中的内存管理采用引用计数机制
B、autorelease pool 是OC中一种自动的垃圾回收机制
C、alloc、new或copy来创建一个对象,那么你必须调用release或autorelease
D、OC的内存管理机制本质上还是C语言中的手动管理方式,只不过稍加了一些自动方法
17、
关于系统自带的UITableViewCell,以下说法正确的是:
答案:(D)
A、Cell基本组成:编辑、内容、辅助
B、编辑:editView。tableView被编辑时显示
C、内容:contentView。包含imageView,textField等
D、accessoryView。显示cell的辅助信息
18、
应用程序启动顺序正确的是:①在UIApplication代理实例中重写启动方 法,设置第一个ViewController②程序入口main函数创建UIApplication实例和UIApplication代理实例③在第一个 ViewController中添加控件,实现对应的程序界面。
答案:(B)
A、①②③
B、②①③
C、①③②
D、③①②
19、
实现一个生成Student实例对象的便利构造器的正确写法是:
答案:(A)
A、
+ (id)studentWithName:(NSString *)newName andAge:(int)newAge
{
Student *stu = [[[Student alloc] initWithName:newName andAge:newAge] autorelease];
return stu;
}
B、
- (id)studentWithName:(NSString *)newName andAge:(int)newAge
{
Student *stu = [[Student alloc] initWithName:newName andAge:newAge];
return [stu autorelease];
}
C、
- (void)studentWithName:(NSString *)newName andAge:(int)newAge
{
Student *stu = [[Student alloc] initWithName:newName andAge:newAge];
return [stu autorelease];
}
D、
+ (void)studentWithName:(NSString *)newName andAge:(int)newAge
{
Student *stu = [[Student alloc] initWithName:newName andAge:newAge];
return [stu autorelease];
}
20、
以下关于视图的frame与bounds的理解错误的是:
答案:(A)
A、bounds是指这个view在window坐标系的坐标和大小
B、frame指的是这个view在它superview的坐标系的坐标和大小
C、frame和bounds是UIView中的两个属性(property)。
D、一个是以自身左上角的店为原点的坐标系,一个是以屏幕左上角的点为原点的坐标系。
21、
UITableView重用机制中,会将重用的cell放到哪种类型的集合中。
答案:(B)
A、NSMutableArray
B、NSMutableSet
C、NSDictionary
D、NSMutableDictionary
22、
当应用程序将要进入非活动状态执行,在此期间,应用程序不接收消息或事件,比如来电话了,此时会先执行以下哪个方法:
答案:(D)
A、- (void)applicationDidBecomeActive:(UIApplication *)application{ }
B、- (void)applicationDidEnterBackground:(UIApplication *)application{ }
C、- (void)applicationWillTerminate:(UIApplication *)application{ }
D、- (void)applicationWillResignActive:(UIApplication *)application{ }
23、
以下哪个控件不是继承于UIControl
答案:(D)
A、UIButton
B、UITextField
C、UISlider
D、UITextView
24、
对于UISegmentedControl,实现在指定索引插入一个选项并设置图片的方法是:
答案:(B)
A、[segmentedControl setImage:[UIImage imageNamed:@"btn_jyy.png"] forSegmentAtIndex:3];
B、[segmentedControl insertSegmentWithImage:[UIImage imageNamed:@"mei.png"] atIndex:2 animated:NO];
C、[segmentedControl insertSegmentWithTitle:@"insert" atIndex:3 animated:NO];
D、[[UIImageViewalloc]initWithImage:[segmentedControl imageForSegmentAtIndex:1]];
25、
对于UIScrollViewController,监控目前滚动的位置的属性是:
答案:(A)
A、contentOffSet
B、contentSize
C、contentInset
D、scrollIndicatorInsets
※ 判断题(共5题,每题3分)
1、
UISlider、UISwitch、UITextField这些类都继承于UIControl这个类。
答案:(T)
正确
错误
2、
[segmentedControl titleForSegmentAtIndex: ]表示指定索引文字的选项。
答案:(T)
正确
错误
3、
[self.view popToViewController: animated: YES];表示弹出一个视图控制器,到指定视图控制器上。
答案:(F)
正确
错误
4、
[textField resignFirstResponder]; 表示让文本输入框成为第一响应者, 弹出键盘进入编辑模式。
答案:(F)
正确
错误
5、
numberOfTapsRequired这个方法能获取到的是有几只手指点击。
答案:(F)
正确
错误
相关推荐
Sketch IOS UI组件库,安装即可自动加载到Sketch中,省去自己建库的时间。
### iOS UI开发详解 #### 一、iOS UI开发概述 在iOS开发中,用户界面(User Interface, UI)的设计与实现是非常关键的一部分。优秀的UI不仅能够提升用户体验,还能够更好地展示应用的功能特性。本文将深入讲解iOS...
最后,"仿iOSUI动画"项目中的源代码和资源文件可以帮助开发者更好地理解和实现这些效果。通过分析和学习提供的文件,可以了解到如何将这些动画集成到自己的项目中,并根据需求进行调整和优化。同时,这也有助于提升...
在iOS开发中,UI设计是至关重要的组成部分,它关乎到应用程序的用户体验和视觉吸引力。"IOS UI设计源码"这个主题涵盖了iOS应用中用户界面的设计和实现,这通常涉及到使用苹果的开发工具Xcode,以及Swift或Objective-...
在iOS应用开发中,UI抽屉效果是一种常见的交互设计,它允许用户通过滑动手势从屏幕边缘拉出或隐藏一个视图,常用于导航菜单、设置面板等场景。"猫猫学ios UI抽屉效果"这个教程可能涵盖了如何在iOS应用中实现这种效果...
在iOS UI设计中,开发者和设计师需要遵循一套严格的规范,以确保用户界面的一致性和良好的用户体验。这份"ios UI设计"资源包包含了非官方但极具参考价值的信息,涵盖了屏幕尺寸、按钮大小、字体大小以及图标大小等多...
ios ui设计,里面是ios的各种控件的psd源文件。
在iOS开发中,UI制作是至关重要的一环,它关乎到应用程序的用户体验和视觉吸引力。"ios UI制作 扫雷 八种样式"这个项目显然旨在通过实现扫雷小游戏来展示如何设计并构建多样化的用户界面。扫雷游戏,作为一个经典的...
包含collectionView,UIBezierPath,ActionSheet,DatePicker,pickerView,SearchBar,UIActivityIndicatorView,UIAlertView,UIButton,UIimagePicker,UILabel,UInavigationController,UIProgressView,UIScrollerView,...
在iOS应用开发中,UI框架扮演着至关重要的角色,它为开发者提供了构建用户界面所需的工具和组件。本项目聚焦于iOS开发中的UI框架,提供了一套完整的解决方案,包括App的首次启动引导页面、基于UITabBarController的...
在iOS平台上,开发一款UI简易纸牌游戏,可以是一个有趣且具有挑战性的项目,它涉及到多个iOS UI设计和编程的概念。下面将详细讲解这个项目的关键知识点。 首先,我们需要理解"UI",即用户界面(User Interface)。...
在这个"iOS UI基础 UITableView 团购代码"示例中,我们将探讨如何使用XIB(Interface Builder中的用户界面文件)自定义UITableViewCell来构建一个团购应用的界面布局。 首先,让我们理解一下XIB文件的作用。XIB...
iOS用户界面(UI)开发是任何iOS应用开发项目的关键部分。在本篇“iOS史上最全的UI笔记”中,作者承诺提供一系列详细的UI学习资料,旨在帮助开发者快速掌握iOS UI设计和开发的相关知识。 首先,笔记提到了...
在iOS开发中,UI(用户界面)设计是至关重要的,因为它直接影响到用户的体验和应用程序的吸引力。本示例集合“ios常用ui的demo”涵盖了多个关键的UI组件和功能,帮助开发者更好地理解和实现这些常见的iOS界面元素。...
在iOS开发中,用户界面(UI)的设计与实现是至关重要的,因为它直接影响到用户的体验和产品的吸引力。"iOS注册UI案例"是一个展示如何在iOS应用中创建用户注册流程的实例,由开发者“猫猫”精心制作。这个案例包含了...
iOS9 UI Tests UI自动化测试 demo 这篇文章详细讲解了原理以及如何操作 http://blog.csdn.net/zhao18933/article/details/46621999 demo中还提供了另外一种进行自动化测试的思路
《iOS UI Kit——打造卓越移动应用界面的利器》 在当今移动互联网时代,iOS设备以其卓越的用户体验和精美设计在全球范围内赢得了广泛的认可。为了帮助开发者和设计师更好地创建符合苹果设计理念的高质量应用程序,...
### iOS UI设计指南知识点概述 #### 一、引言与理念 - **平台与交互设计原则**:优秀的iOS应用程序应当遵循iOS的人机交互指南,确保应用程序不仅美观而且实用。 - **简洁定义**:一个伟大的应用从清晰的目标和定义...
iOS 7 UI Components是iOS7组件的psd文件