首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

iOS基础问答面试题连载(二)-附答案

xcode7没有Frameworks文件夹,xcode7内部会自动帮你导入一些常见的框架. xcode7多了LaunchScreen.xib,LaunchScreen.xib设置启动界面,而且可以确定模拟器或者真机的真实尺寸...把pch里面的所有内容导入到每个文件中去 3.UIApplication常见功能? 设置应用提醒数字 设置连网状态 设置状态栏 跳转网页 4.程序完整启动流程?...添加到UIWindow上,于是控制器的view就显示在屏幕上了 一个iOS程序之所以能显示到屏幕上,完全是因为它有UIWindow 6.手动创建窗口的步骤?...导航控制器可以轻松的完成控制器之间的切换.其操作有push,pop等. 21.自动跳转与手动型跳转区别? 自动跳转:通过控件直接拖线的方式进行跳转 手动跳转:在跳转之前要去做一些处理工作....步骤: 定义协议 定义代理属性 在.m文件当中调用代理方法 设置代理 遵守协议 实现协议方法 23.ios当中存储方式有哪些?

1.4K90

【IOS开发基础系列】Storyboard专题

与传统的 nib 文件不同,故事板文件有以下优点:     1、通过一个故事板文件,你能对所有的窗口以及它们之间的关系一目了然。...因为所有的窗口设计在一个故事板文件中,你会更容易把握每次改动带给每个窗口的变化。     2、在故事板中可以描述各个窗口之间的转换。这种转换叫做 segue(连接)。...这将减少窗体导航的代码。     3、哪怕在 tableview 上故事板仍然有用,例如定制    tableviewcell。...那么,在没有 MainWindow.xib 文件的情况下,故事板是怎样被加载到app中的呢?         ...2 使用 2.1 结合xib使用     思路:         APP跳转流程在故事板中呈现,但是VC的事件处理与详细视图设计放在xib文件中。

1.3K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    通过 SSH 在远程和本地系统之间传输文件的 4 种方法

    成功传输文件,您需要 在两台机器之间进行 SSH 访问 知道远程机器上的用户名和密码 远程机器的 IP 地址或主机名(在同一子网上) 除此之外,让我们看看通过 SSH 在远程系统之间复制文件的方法。...方法一:使用 scp 命令通过 SSH 复制文件 scp 将被弃用,尽管如此,它仍然是我最喜欢的通过 SSH 在系统之间传输文件的工具。 为什么? 因为它的语法类似于 cp 命令。..., rsync 是通过 SSH 在远程系统之间复制文件的下一个最佳工具,实际上,它在许多方面都比 scp 好。...一样的。只需使用-rrsync 选项在远程系统之间通过 SSH 复制整个目录。...[202204121047953.png] 方法 四:使用基于 GUI 的 SFTP 客户端在远程系统之间传输文件 作为最后的手段,您可以使用 FTP 客户端在远程和本地系统之间传输文件。

    12.3K10

    【swift学习笔记】三.使用xib自定义UITableViewCell

    使用xib自定义tableviewCell看一下效果图 1.自定义列 新建一个xib文件 carTblCell,拖放一个UITableViewCell,再拖放一个图片和一个文本框到tableviewcell...上 并给我们的xib一个标识 为了学习,我这里的xib和后台的class是分开建的。...我们再建一个cocoa touch class文件名称为CarCellTableViewCell继承自UITableViewCell 并把我们的xib和新建的CarCellTableViewCell建立联接...在CarCellTableViewCell里建立和xib的图片和文本框的输出 import UIKit class CarCellTableViewCell: UITableViewCell {...在main.storyboard上拖放一个uitableview,并在后台代码建立输出联接 1.在load事件里注册xib 2.在tableveiw的方法里得到当前的列,指定数据源。

    2K70

    Swift 书面 ToDo App

    下面的代码是使用的全部Xcode Version 6.0.1 (6A317)书面。 因为当使用团队开发stroyboard在并购的诸多不便的时间,所有或使用.xib该文件准备ToDo App....想要实现的效果例如以下: 步骤: 1、新建一个基于Singal View Application 的project,然后删掉storyboard,在新建两个新文件 Main.xib 和 Main.swift...一个用于展示todo list 的 tableView,然后关联一个 tableView 变量到 Main.swift文件 2、接下来设置 Mian 为rootViewController,在AppDelegate.swift...3、然后在Main.swift 中编写一下TableView 的数据源和代理的方法。这里我们用的是 自己定义的 Cell。...记得绑定(同步骤1),Add.xib UI例如以下: 为了在Main.swift 中接收到 Add.xib 中用户输入的信息,我们在 Add.swift 定义一个协议。

    1.5K20

    Jekyll-Admin-Mac 开发纪要-左侧菜单栏

    设置左侧的 Logo 我们拖拽文件 jekyll-admin-logo.png到工程 Assets.xcassets。 ? 左边功能菜单我们设置宽度为 205。...我们设置刚才新建的 NSView继承我们新建的类 SideMenuView。 使用 Xib 加载试图 到这里,我们新建的 NSView无法正常的显示出来。...我们按照上文所描述的方法创建一个 Xib文件。 我们设置 Xib里面的 NSView的宽度为 205,高度为 49。其实我们这个宽度和高度会随着改变的。...然而现在一个问题已经出现,现在这么多的配置需要配置岂不是很麻烦。 这就涉及到面向对象思想,但是我们可以在 Swift中使用 Struct作为我们的配置数据源。...我们设置默认值这样 之前的代码也可以 正常的编译通过。

    2.1K10

    关于刘海打理这种事儿,美团点评的iOS工程师早就有经验了,不信你看!

    图1.3 搜索的表现 ? 图1.4 “我的Tab”表现 在图1.1中乍一看表现还不错,可是在图1.2中,下拉刷新之后,我们的导航栏还是被刘海挡住了。...到 SafeArea 区域。...系统通过设置 adjustedContentInset 为 safeAreaInset 的值让 Tableview 偏移。 ?...当然还可以通过设置 tableview.contentOffset 来抵消这个值,但还是推荐第一种。 ④ “我的Tab” 导航栏上,右边那个按钮全都发生了偏移,导致无法点击。...这个问题也是在新的导航栏结构视图下会出现,原因是新的导航栏结构用了 AutoLayout 布局,我们这个并不是用常规的 UIBarButtonItem 方式实现的,而是一个 UIBarButtonItem

    2.1K70

    iOS中Cell约束--使用xib实现多label的自动约束--高度随内容自适应

    实现cell高度自适应的简单方法; 手动设置数据源,初始展示 如图,这是最简单的tableView了,只有两个label,没有任何其他的控件,在未做任何处理的情况下,我们发现,内容是会越界(跑的屏幕之外的...),首先第一步,我们得先解决这个问题,至少让内容都在屏幕内展示; 通过试图-发现内容越界 -->探索:难道是因为,tableView的高度不够,比如高度只有44,内容就只能这样显示了吗? ...根据keyLabel的内容计算宽度 通过内容,计算keyLabel的宽度,同时设置到keyLabel的宽度约束上,更新约束; 随后,valueView由于自适应,其宽度就自动 = 屏幕宽度 - keyLabel...,我们在设置宽度时,稍微加一点,就可以解决这个问题。...修改完的展示 此时,label相互之间的约束冲突就解决了~ ---- 接下去,就是设置tableViewCell的高度自适应的问题了; xib的快捷设置方法:1.在xib中,设置 顶部 和 底部 约束之后

    3.6K60

    制作动态framework与静态framework的那些坑

    我们使用xib方式创建了tableView和cell以及一个viewcontroller 3 需要暴漏给外部使用h文件 好了基本的工程已经出来了,现在我们来看看怎么玩这两种形式的framework...我们此时可以将framework拖到工程中使用啦,但是xib对应的此时是无法加载的。为什么? 对于此时的动态库来说,是在需要是动态载入的 ?...启动是伴随着加载, 其次 太会被放置到App的包中也就是我们ipa文件的Payload里面 我们主要说不同点: 1 图片 plist等资源加载 我们可以将这些依赖的资源文件制作为bundle(简单制作就是创建个文件夹...,把文件放进去,然后为修改文件夹为xx.bundle即可), 在导入我们的静态库是也将另外制作的bundle文件导入工程即可 UIImage *staticImage = [UIImage imageNamed...将Link Binary With Library 中引入 ===》 目的是在头文件中可以导入查找文件声明 Copy Bundle Resources 将静态库与resource对应的bundle导入项目

    2.1K20

    在iOS中怎样创建可展开的Table View?(上)

    你是否使用可展开的tableView,并不总是取决于你开发的app的性质.然而,通过继承UITableViewCell类以及创建额外的xib文件,cell的界面可以自定义,app的外观和感觉通常不是一个问题...你可以注意到上面的tableview打开的时候有多种类型的cell.所有这些你都可以在启动项目里找到,可供你下载,还包括一些其他将要实现的东西.设计的所有自定义cell都在单独的xib文件中,同时一个自定义的...在项目中你会发现有如下自定义cell的xib文件: ? 它们的名字说明了每个cell所代表的含义,你可以在启动项目中更深的区探索它们....:首先确保plist文件的路径在目录(bundle)里是有效的,然后我们通过加载文件内容初始化cellDescriptors数组....xib文件cell的高度值.

    1.8K50

    iOS表视图单元格高度自适应

    iOS表视图高度自适应可以节省很多麻烦,尤其是涉及到复杂的业务逻辑时,今天尝试了使用Masonry和FDTemplatelayoutCell来布局表视图单元格,从而达到单元格高度自适应的效果,这里就总结了这其中使用的要点和注意问题...,是UITableView的类目文件。...使用的时候关键步骤包括: 1、注册表视图的单元格 这里分为NIb文件和普通类文件的单元格注册,我使用的是xib文件创建的单元格,代码如下: - (UITableView *)tableView{...因为在布局的时候是相对于self的,这样可能会使约束错乱,自适应高度无效。...类型单元格使用时的错误 因为我使用了xib文件来加载视图的,所以开始的时候写了如下方法获取单元格 //获取单元格 + (OrderTableViewCell *)getOrderTableViewCell

    1.8K70

    iOS开发过程中的奇淫技巧记录

    为了修改带分组tableview的section header跟随置顶的问题,网上的奇淫技巧比方通过修改scroller的回调方法,体验不好,正规的方法是修改为tableView的UITableViewStyleGrouped...模式,但该模式下列表section Header的高度过高,需要设置一个footer的高度: - (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection...:(NSInteger)section {     return 0.01; } 结束当前界面,进入新的界面,使用导航的pushViewController进入下一个页面,需要删除navigationController.viewControllers...,最原始的就是frame,如果是使用约束,也需要至少指定左、上,宽、高,否则约束会出现异常(xib中配置约束或者使用Masonry配置约束),比方设置一个view在屏幕的底部的约束: [view mas_makeConstraints...implementation UITextView (DisableCopyPaste) - (BOOL)canBecomeFirstResponder {     return NO; } @end 诸如导航栏标题上的背景颜色修改

    60620

    编码篇-iOS开发中的奇巧小伎

    26、判断两个rect是否有交叉 27、判断一个字符串是否为数字 28、将一个view保存为pdf格式 29、获取当前导航控制器下前一个控制器 30、保存UIImage到本地 31、动画修改label...45、使用xib设置UIView的边框、圆角 46、将一个xib添加到另外一个xib上 47、处理字符串,使其首字母大写 48、获取字符串中的数字 49、自动搜索功能,用户连续输入的时候不搜索,用户停止输入的时候自动搜索...弄成透明的而不是带模糊的效果,(亲测有效) 诸技罗列 1.TableView不显示没内容的Cell self.tableView.tableFooterView = [[UIView alloc] init...ttf 格式,拖入工程 2、在工程的plist中增加一行数组,“Fonts provided by application” 3、为这个key添加一个item,value为你刚才导入的ttf文件名 4...本地受保护的文件可用了 39、获取collectionViewCell在屏幕中的frame 可以用来设计collectionViewCell点击放大缩小到初始位置。

    5.4K10

    iOS TableView 优化

    优化就注意几点 1.TableView性能影响最大的是每个cell高度的获heightForRowAtIndexPath,这个函数会调用很多次,对于不是固定高度的cell,每次都需要去计算。...像朋友圈这种,内容框的高度是需要通过计算文字得到高度的,这种大量的操作是很损耗性能的。所以,在请求完数据之后就计算好每个cell的高度,并且缓存起来,下次直接从缓存拿过来用。...UIKit的工作基本上都是在主线程上进行,界面绘制,用户输入响应等等。...4.尽可能的降低Storyboard,Xib的使用 在网上的一些资料了解到,xib或者storyboard本身就是一个xml文件,添加删除控件必然中间多了一个encode/decode过程,增加了cpu...Xib文件是在主线程中进行加载布局,所以Cell最好使用纯代码布局。如果cell高度是固定这种情况可以少量使用Xib。

    76820

    浅谈MVC

    View:就是在xib文件中设计出来的那些View对象(storyboard暂时我还没去学,不敢妄下结论哈); Controller:就是各个ViewController对象; 确实很简单明了...在DateView中发起GetDateTime服务请求并获取到数据后,需要将日期数据传递给TableView以发起获取表业务数据并加载到页面的操作,但因为这两个View是兄弟关系,而非父子关系,所以数据的传递只能采用发通知或者写委托的方式来处理...当然,在实际开发过程中,还是遇到了一些小问题——主要是xib文件中控件、事件与代码中属性、变量或方法的连接问题。...但是,若每个子View都使用各自xib文件进行设计,那事件的连接线似乎无从接起,因为貌似无法跨xib文件进行连接。...另一个法子,也是目前我在项目中使用的法子,即是只用一个xib文件进行设计,每个子View的界面设计工作都放到ViewController对应的xib文件中来设计,这样界面事件就能轻松跟ViewController

    95020

    iOS的MVC框架之控制层的构建(下)

    有很多同学不喜欢系统提供的Storyboard和XIB来构建视图,而是喜欢通过代码的形式来完成视图界面布局,并且通常这部分代码都集中在loadView或者viewDidLoad或者通过懒加载的形式分散在各处...我们知道在iOS的loadView的默认实现逻辑是首先会到SB或者XIB中去根据视图控制器的类型去搜索是否有匹配的视图布局文件,如果有则将这个视图布局文件进行解析并构建对应的视图层次树并设置视图控制器中的那些插座变量...//定义一个扩展,扩展里面定义所有控制器可能要用到的视图属性,定义属性的方式就和通过SB或者XIB的方式一致。...如果我们想完全实践MVC中的V独立存在并且可以被复用的话,我们可以将视图构建和布局单独抽象到一个视图类中,并且通过接口定义和消息转发的方法来建立控制器和视图之间的联系。...类,他的作用非常的明确就是实现数据到视图之间的更新和绑定处理。

    4.4K30
    领券