这不是一个问题,而是我面临的问题的解决方案.
在Xcode 7中,当应用程序在iPad设备上的iOS 9上运行时,UITableView单元格会在tableview的左侧留下一些边距.将设备旋转到横向会增加边距.
我找到的解决方案是:
将"cellLayoutMarginsFollowReadableWidth"设置为NO.
self.tbl_Name.cellLayoutMarginsFollowReadableWidth = NO;
Run Code Online (Sandbox Code Playgroud)
因为,此属性仅在iOS 9中可用.因此,您必须设置条件来检查iOS版本,否则它将崩溃.
if (NSFoundationVersionNumber > NSFoundationVersionNumber_iOS_8_1)
{
self.tbl_Name.cellLayoutMarginsFollowReadableWidth = NO;
}
Run Code Online (Sandbox Code Playgroud)
希望它对其他人有所帮助.
我正在使用xcode 7 GM种子,并通过cocoapods安装了最新的Google Signin SDK pod "Google/SignIn.当我尝试将我的应用程序发布到Apple应用商店时,我收到了附加的错误.
救命!!
以下是Google SDK pod的详细版本
- Google/Core (1.0.7):
- GoogleNetworkingUtilities (~> 1.0)
- GoogleSymbolUtilities (~> 1.0)
- GoogleUtilities (~> 1.0)
- Google/SignIn (1.0.7):
- Google/Core
- GoogleSignIn (~> 2.0)
- GoogleAppUtilities (1.0.0):
- GoogleSymbolUtilities (~> 1.0)
- GoogleAuthUtilities (1.0.1):
- GoogleNetworkingUtilities (~> 1.0)
- GoogleSymbolUtilities (~> 1.0)
- GoogleNetworkingUtilities (1.0.0):
- GoogleSymbolUtilities (~> 1.0)
- GoogleSignIn (2.2.0):
- GoogleAppUtilities (~> 1)
- GoogleAuthUtilities (~> 1)
- GoogleNetworkingUtilities (~> 1)
谢谢.
曾经是在首选项中点击刷新箭头/循环按钮 - >帐户将使用所有新设备下拉新的配置文件.
现在它只下载你已经拥有的那些.但是,如果您需要更新的那个是由Xcode管理的,那么我无法找到添加设备!
我pod install和El Capitan一起跑了并得到了这个错误:
Errno::EPERM - Operation not permitted - /Users/../Pods/Pods.xcodeproj/xcuserdata/root.xcuserdatad
Run Code Online (Sandbox Code Playgroud)
这是我的环境:El Capitan(15A279b),Xcode 7.0版(7A220),cocoapod 0.38.2.有任何想法吗?谢谢!!!
我使用xcode7(而不是6.4)的原因是我需要将现有项目定位到iOS9进行测试.我使用El Capitan的原因是xcode7不能在Yosemite下运行.我需要更换一个不再适用于iOS9的库(由cocoapod管理).
以下是我在El Capitan安装cocoapods的方法,
sudo gem install -n /usr/local/bin cocoapods
如此链接建议卸载后无法安装可可豆荚,导致错误
pod --version
回报
0.38.2
我是否可以在XCTest中调用API调用setUP()或tearDown()以在测试之间重置应用程序?我查看了XCUIApplication的点语法,我看到的只是.launch()
或者有没有办法在Swift中调用shell脚本?然后我可以调用xcrun中间的测试方法来重置模拟器.
有一个Xcode7 beta名为as的新控件Storyboard Reference.下面是它的图像.

它的描述如下
为外部故事板中的视图控制器提供占位符.连接到此占位符的Segues将在运行时实例化引用的视图控制器.
所以问题是
在我的测试中,我有一个带有预先存在的文本的文本字段.我想删除内容并键入新字符串.
let textField = app.textFields
textField.tap()
// delete "Old value"
textField.typeText("New value")
Run Code Online (Sandbox Code Playgroud)
用硬件键盘删除字符串时没有为我生成记录.用软件键盘做同样的事后我得到了:
let key = app.keys["Usu?"] // Polish name for the key
key.tap()
key.tap()
... // x times
Run Code Online (Sandbox Code Playgroud)
要么
app.keys["Usu?"].pressForDuration(1.5)
Run Code Online (Sandbox Code Playgroud)
我担心我的测试是依赖于语言的,所以我为我支持的语言创建了类似的东西:
extension XCUIElementQuery {
var deleteKey: XCUIElement {
get {
// Polish name for the key
if self["Usu?"].exists {
return self["Usu?"]
} else {
return self["Delete"]
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
它在代码中看起来更好:
app.keys.deleteKey.pressForDuration(1.5)
Run Code Online (Sandbox Code Playgroud)
但它非常脆弱.从模拟器退出后Toggle software keyboard重置,我有一个失败的测试.我的解决方案不适用于CI测试.如何解决这个问题更加普遍?
在Xcode 6中,您可以单击Xcode - >首选项 - >帐户 - >查看详细信息 - >然后会出现一个小圆箭头.这已经过去了,现在有一个"全部下载"按钮,按下时不会重新加载您的配置文件.
我甚至尝试删除我的帐户并重新添加它.仍然没有好处.
我正在从我的iOS模拟器中截取屏幕截图并试图将它们放入iTunes Connect,但它继续告诉我我的尺寸错误.它们与iTunes Connect中已有的图片大小相同.刚刚发生了什么?
xcode7 ×10
ios ×5
xcode ×4
swift ×2
cocoapods ×1
installation ×1
ios9 ×1
objective-c ×1
root ×1
uikeyboard ×1
uitableview ×1
uitextfield ×1
xctest ×1