Tag: swift

Swift把多个IBOutlets放在一个数组中

我做了这些(用红色边框标记)IBOutlets使用ctrl + drag 但我不喜欢有9次完全相同的线(干) 我如何把这些IBOutlets放在一个数组中?

隐藏标签栏并删除空间

有没有办法隐藏tabbar和删除剩下的空间(约50px)? 我试过了 self.tabBarController?.tabBar.hidden = true self.extendedLayoutIncludesOpaqueBars = true 没有运气。 我看到空白。

如何在Xcode的iOS UItesting中select一个select器视图项?

我有一个select器视图,几个项目:“红色”,“绿色”,“黄色”,“黑色”。 在我的UItesting中,我需要从中select一个特定的“绿色”项目。 我正在使用Xcode 7入侵的XCTest UItestingAPI。 到目前为止我所做的是在unit testing中将整个拾取器视图向上滑动。 这是不理想的,因为它始终将select器视图更改为底部项目(向上滑动时)。 let app = XCUIApplication() app.launch() app.pickers.elementAtIndex(0).swipeUp() XCTAssert(app.staticTexts["Selected: Black"].exists) 另一个但非常相似的方式来改变select器视图是调用pressForDuration … thenDragToElement ,这不是我想要的。 app.pickers.elementAtIndex(0).pressForDuration(0.1, thenDragToElement: someElement) 当我使用UItestingloggingfunction时,它不loggingselect器视图滚动事件。 当我点击select器视图项目时,它会logging下来: app.pickerWheels["Green"].tap() 但在testing运行时实际上并不工作(可能是因为它需要在点击之前先滚动select器视图)。 这是testing的演示应用程序。 https://github.com/exchangegroup/PickerViewTestDemo 更新 现在可以select自Xcode 7.0 beta 6以来的select器视图。 app.pickerWheels["Green"].adjustToPickerWheelValue("Yellow")

UIAlertView不工作在Swift中

当我迅速将这段代码弄糟,我不知道为什么应用程序终止在“alertView.show()”部分显示一个断点,有人请帮助我。 var alertView = UIAlertView( title: "Hey", message: "Hello", delegate: self, cancelButtonTitle: "Cancel" ) alertView.show()

如何截取部分UIView的截图?

我希望用户继续我的应用程序,并在Swift中按编程button后,应用程序的屏幕截图。 我知道UIGraphicsGetImageFromCurrentImageContext()需要截图,但我不想要整个屏幕的图片。 我想要一个矩形popup(有点像一个裁剪工具),用户可以拖动和调整矩形只截取屏幕的某一部分的屏幕截图。 我想要矩形通过WKWebView并裁剪Web视图的图片。

允许在iOS中的UITextField单个数字

我有一个Verification ViewController ,我通过短信得到4位validation码,我需要input这些代码login,我已经创build了这样的ViewController 正如你可以看到四个UITextField ,我需要只允许每个UITextField单个数字, 我试过:我试图使用shouldChangeCharactersInRange:method: ,但它没有被调用,我不知道什么是错的,我想因为UITextField在UITableView所以它不工作。

我怎样才能改变导航栏Swift 3的高度

我敢肯定,这不是重复的,因为我看了其他的答案,他们都过时了,没有提供确切的答案。 我有导航控制器和几个视图控制器。 我想使导航栏有点高,所以它会适合我需要的文本大小。 我怎样才能做到这一点 ? 我试过这个:UINavigationBar.appearance()。frame = CGRect(x:0.0,y:0.0,width:320.0,height:210.0)但没有任何反应… 另外,我无法使用Xcode布局button为导航栏添加任何约束。 希望有人能帮我解决这个问题。 提前致谢!

Swift框架不包括通用结构扩展的符号

我无法链接我的框架与利用该框架的代码。 具体而言,链接程序无法findgenerics结构的扩展符号。 这是可选的扩展之一: extension Optional { /// Unwrap the value returning 'defaultValue' if the value is currently nil func or(defaultValue: T) -> T { switch(self) { case .None: return defaultValue case .Some(let value): return value } } } 如果在应用程序的主要部分编译代码,此方法在游乐场或应用程序中效果很好。 但是,当我尝试将其编译为框架时,应用程序(甚至框架的testing)产生以下链接器错误: 架构i386的未定义符号:“__TFSq2orU__fGSqQ__FQQ”,引用来自:__TFC18SwiftPlusPlusTests27Optional_SwiftPlusPlusTests13testOrWithNilfS0_FT_T_可选+ SwiftPlusPlusTests.o 类似的方法,如下面的,链接罚款(注意,它不是一个通用的) extension String { /// Returns a string by repeating it 'times' times […]

Xcode 7 UItesting:closures推送和位置警报

我遇到了Xcode 7 UItesting的问题。 该应用程序在用户login后显示两个警报, 请求位置警报和推送通知警报。 这些通知一个接一个地显示出来。 位置第一个出现。 我试图自动解雇他们开始我的testing。 为了做到这一点,我添加了两个UIInterruptionMonitor ,第一个是位置警报,第二个是通知推送警报。 addUIInterruptionMonitorWithDescription("Location Dialog") { (alert) -> Bool in /* Dismiss Location Dialog */ if alert.collectionViews.buttons["Allow"].exists { alert.collectionViews.buttons["Allow"].tap() return true } return false } addUIInterruptionMonitorWithDescription("Push Dialog") { (alert) -> Bool in /* Dismiss Push Dialog */ if alert.collectionViews.buttons["OK"].exists { alert.collectionViews.buttons["OK"].tap() return true } return false } 但是只有位置被触发,推送通知UIInterruptionMonitor的处理程序永远不会被调用。 […]

在UIView中用xib文件使用CollectionView

我正在做这个,我想使用CollectionView,但我还没有看到原型单元格,并不知道如何使用CollectionView在这种情况下,有人可以帮我吗? 我尝试像这样使用,但比UICollectionView花费很多时间和难于pipe理