快速提问:我的导航标题文本默认不居中(除非我正在运行6 Plus),它应该基于它显示在哪种类型的手机上?标题显示在故事板中(使用通用故事板大小),但是,如果我查看预览或实际电话(4S,5和5S),标题将一直向右推.我是否真的必须尝试使用AutoLayout,或者我缺少属性设置中的设置?

搜索在许多邮件列表中显示此错误,但既不是一般解决方案也不是解释.
什么illegal text-relocoation (direct reference) to (global,weak)意思,怎么解决.
具体来说,我使用这个脚本构建了ffmpeg-2.5.2 .在构建使用它的XCode测试时,会出现以下错误:
ld: illegal text-relocoation (direct reference) to (global,weak)
_ff_h264_cabac_tables in <...>/myLib.a(cabac.o)
from _ff_h264_decode_mb_cabac in <...>/myLib.a(h264_cabac.o)
for architecture i386
Run Code Online (Sandbox Code Playgroud)
这是否需要编译器/链接器选项来修复或某种代码更改?
有没有办法使用Swift以编程方式完全创建NSTextFields?我正在创建一个我不想连接到故事板的mac应用程序,但除了制作IBOutlet之外,我无法弄清楚创建NSTextField的任何方法.顺便说一句,我是编程的新手,很抱歉我缺乏技术语言.
谢谢!
编辑:
这是我到目前为止尝试过的代码:
当我这样做时,我收到错误消息"致命错误:在解开一个Optional值时意外地发现了nil".无论我是否测试SKView或NSView,都会弹出相同的错误消息.如果我尝试将IBOutlet定义为"view"而不是"test",它会告诉我我无法覆盖存储的属性"view".
import Foundation
import Cocoa
import SpriteKit
class SettingsScene: SKScene {
@IBOutlet weak var window: NSWindow!
@IBOutlet weak var test: SKView!
var ballSpeedText = NSTextField(frame: NSMakeRect(20,20,200,40))
override func didMoveToView(view: SKView) {
ballSpeedText.textColor = NSColor.redColor()
ballSpeedText.stringValue = "Test"
test.addSubview(ballSpeedText)
}
Run Code Online (Sandbox Code Playgroud)
如果我尝试不创建任何IBOutlets,只使用视图,我没有收到任何错误,但文本字段没有显示:
import Foundation
import Cocoa
import SpriteKit
class SettingsScene: SKScene {
var ballSpeedText = NSTextField(frame: NSMakeRect(20,20,200,40))
override func didMoveToView(view: SKView) {
ballSpeedText.textColor = NSColor.redColor()
ballSpeedText.stringValue = "Test"
view.addSubview(ballSpeedText)
}
Run Code Online (Sandbox Code Playgroud) 我正在使用SpriteKit .sks文件我可以将.sks中的精灵变成SKSpriteNode的子类实例吗?
这是我的子类中的init方法:
init(imageNamed: String) {
let blockTexture = SKTexture(imageNamed: imageNamed)
super.init(texture: blockTexture, color: nil, size: blockTexture.size())
}
Run Code Online (Sandbox Code Playgroud)
在GameScene.swift中,我可以创建一个这样的实例:
var myObj = Block(imageNamed: "Block")
Run Code Online (Sandbox Code Playgroud)
我的问题是如何将此实例与.sks文件相关联?
我尝试了这行代码,但它不起作用.
myObj = childNodeWithName("block1") as Block
Run Code Online (Sandbox Code Playgroud)
有帮助吗?
谢谢.
如何更改标签的字体大小而不更改xcode6中的字体系列?我正在使用以下代码行:
lblMain.font = [UIFont systemFontOfSize:22];
Run Code Online (Sandbox Code Playgroud) 我有一个UIViewController,我正在通过IB使用Autolayout来定位和调整其子视图.
出于某种原因,我没有得到正确的UIView布局,我决定在VC中记录所有子视图大小.
我记录了子视图大小:
viewDidLoad{
self.view.layoutIfNeeded()
print(uiview.size)
}
viewDidLayoutSubviews{
print(uiview.size)
}
viewWillAppear{
print(uiview.size)
}
viewDidAppear{
print(uiview.size)
}
Run Code Online (Sandbox Code Playgroud)
子视图大小是正确的:
但它变得不正确:
如何使用ViewWillAppear中正确的子视图大小?为什么在最终的viewDidLayoutSubviews调用和viewDidAppear中我的尺寸不正确?
我正在使用Xcode 6 Swift和情节提要构建一个IOS应用。贝娄是我在File.swift中拥有的:
import Foundation
struct December {
let name : String
}
Run Code Online (Sandbox Code Playgroud)
然后,在我的视图控制器中,我有:
import UIKit
class ViewControllerDecember: UITableViewController {
var december = [December] ()
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
self.december = [December(name: "1"), December(name: "2"), December(name: "3"), December(name: "4"), December(name: "5"), December(name: "6"), December(name: "7"), December(name: "8"), December(name: "9"), December(name: "10"), December(name: "11"), December(name: "12"), December(name: "13"), December(name: "14"), December(name: "15"), December(name: "16"), December(name: "17"), December(name: …Run Code Online (Sandbox Code Playgroud) 标题可能看起来有点复杂,所以我只会在一些图片中向您展示我想要的东西.
所以这就是我想要的:
[1] - http://i.stack.imgur.com/5Vckr.png
以下是我在xCode 6中尝试完成它的方法:
[2] - http://i.stack.imgur.com/ags9s.png
[3] - http://i.stack.imgur.com/UhIuy.png
正如您所看到的,我尝试使用大小类将ImageView在纵向视图中向左和向右捕捉,并在横向中向下和向上捕捉.但不知何故,它在Landscape中没有对齐,如果我看一下iPad预览,ImageView根本就不会出现.这可能很简单,但我试了好几个小时仍然没有结果.
谢谢您的帮助!
我正在努力将touchID集成到我的应用程序中.这个过程非常简单,但即使只是使用我的虚拟数据,它在执行任务之前需要大约5秒的时间来验证我的指纹.
这是我的代码:
func requestFingerprintAuthentication() {
let context = LAContext()
var authError: NSError?
let authenticationReason: String = "Login"
if context.canEvaluatePolicy(LAPolicy.DeviceOwnerAuthenticationWithBiometrics, error: &authError) {
context.evaluatePolicy(LAPolicy.DeviceOwnerAuthenticationWithBiometrics, localizedReason: authenticationReason, reply: {
(success: Bool, error: NSError?) -> Void in
if success {
println("successfull signin with touchID")
self.emailInputField.text = "john.doe@gmail.com"
self.passwordInputField.text = "password"
self.signIn(self.signInButton)
} else {
println("Unable to Authenticate touchID")
}
})
}
}
Run Code Online (Sandbox Code Playgroud)
即使使用虚拟数据,也需要花费太长时间.
当我正常登录时,通过在我的输入字段中键入电子邮件和密码,signIn()函数立即运行.
看看它是否有问题.我尝试用2行替换它,只需将我带到正确的viewController.但是在对我的指纹进行身份验证后仍需要几秒钟.
我知道这不是手机,也不是touchID.因为它立即运行我的println("使用touchID成功登录").之后是什么,由于某种原因它需要几秒钟才能运行?
任何帮助解释这一点将不胜感激!
我创建了一个自定义UITableViewRowAction.因此,如果我通过UITableViewCell向左滑动,则会出现一个自定义按钮(没有自定义按钮,例如删除按钮).如果我按下这个自定义按钮,UIView会出现,但仍然会显示按下的按钮.按下按钮后,我想看到没有此按钮的UITableViewCell.你们中的某些人是否知道如何在Swift中做到这一点并想帮助我?谢谢你的回答.
截图:https://www.dropbox.com/s/8g04kcvswujsn71/stackQuestion.png?dl = 0
xcode6 ×10
ios ×6
swift ×6
autolayout ×2
uitableview ×2
xcode ×2
clang ×1
ffmpeg ×1
fonts ×1
ios8 ×1
ld ×1
macos ×1
nstextfield ×1
sprite-kit ×1
touch-id ×1