我通过push segue呈现视图控制器后,在使用Swift2在Xcode7中运行代码时出现以下错误:
_BSMachError: (os/kern) invalid capability (20)
_BSMachError: (os/kern) invalid name (15)
Run Code Online (Sandbox Code Playgroud)
其他SO文章没有解决方案,是否有人知道这个问题?
更新:我正在使用Swift 2.0的XCode 7 Beta
当我尝试在iPhone上运行我的应用程序时,我得到以下3个错误:
<Error>: CGContextSaveGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
<Error>: CGContextTranslateCTM: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
<Error>: CGContextRestoreGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
Run Code Online (Sandbox Code Playgroud)
当我启用CG_CONTEXT_SHOW_BACKTRACE变量时,我得到这个:
Backtrace:
<<redacted>+40>
<<redacted>+432>
<<redacted>+144>
<<redacted>+172>
<<redacted>+332>
<<redacted>+112>
<<redacted>+820>
<<redacted>+688>
<<redacted>+356>
<<redacted>+80>
<<redacted>+808>
<<redacted>+344>
<<redacted>+420>
<<redacted>+104>
<<redacted>+284>
<<redacted>+556>
<<redacted>+504>
<<redacted>+1792>
<<redacted>+220>
<<redacted>+284>
<<redacted>+920>
<<redacted>+168> …Run Code Online (Sandbox Code Playgroud) 我需要通过从项目目录(又名mainBundle)开始的路径检索我的Xcode项目中包含的资源的URL
所以,如果我的指定路径是./snd/archer/acknowledge1.wav,我需要从中创建一个URL.
我知道我可以NSURL(fileURLWithPath:)用于系统目录,但我不知道如何直接从bundle中执行此操作.
我正在尝试在Alamofire中发出POST请求以返回JSON对象.这段代码在Swift 1中有效,但在swift 2中我得到了这个无效的参数问题:
Tuple types '(NSURLRequest?, NSHTTPURLResponse?, Result<AnyObject>)' (aka '(Optional<NSURLRequest>, Optional<NSHTTPURLResponse>, Result<AnyObject>)') and '(_, _, _, _)' have a different number of elements (3 vs. 4)
Run Code Online (Sandbox Code Playgroud)
似乎错误参数已被删除,但我在函数内部使用错误参数来检查错误,那么如果没有错误参数我该如何做呢?
这是我的POST请求代码:
let response = Alamofire.request(.POST, urlPath, parameters: parameters, encoding: .URL)
.responseJSON { (request, response, data, error) in
if let anError = error
{
// got an error in getting the data, need to handle it
print("error calling POST on /posts")
print(error)
}
else if let data: AnyObject = data
{
// handle the …Run Code Online (Sandbox Code Playgroud) 我在ViewController上呈现UITableView时收到此错误.
该问题仅发生在iPad上,而不是任何其他物理iOS设备或模拟器上.
内存保持在16MB以下,没有网络呼叫.使用Xcode 7.3.1在运行iOS 9.3.4的iPad Air 2上进行测试
人们已经说过这是一个重复的问题,但是关于这个的另外两个问题没有解决方案,并且被错误地标记为重复.
潜在重复的链接:
是否有一种简单的方法来迭代结构的所有属性?我熟悉的非静态属性的方法是使用Mirror,但是当struct只包含静态属性时,这会返回一个空数组.这是我想要实现的一个例子:
struct Tree {
static let bark = "Bark"
static let roots = "Roots"
}
let treeParts = [String]()
// insert code here to make treeParts = ["Bark", "Roots"]
Run Code Online (Sandbox Code Playgroud) 我试图在解雇之前提出的push segue一个navigation controller之后执行a .modalnavigation controller
内部modal(UIViewController):
func textFieldShouldReturn(textField: UITextField) -> Bool {
var searchNav = SearchNavigationController()
self.dismissViewControllerAnimated(true, completion: {searchNav.goToNextView()})
return true
}
Run Code Online (Sandbox Code Playgroud)
内部SearchNavigationController:
func goToNextView() {
performSegueWithIdentifier("searchNavigationToNextView", sender: self)
}
Run Code Online (Sandbox Code Playgroud)
问题是,当我点击返回时,我收到此错误:
由于未捕获的异常'NSInvalidArgumentException'终止应用程序,原因:'Receiver()没有带标识符'searchNavigationToNextView''的segue
segue存在于我的身边storyboard,从一直UINavigationController到另一个next view.
编辑:试过这个,其中_sender在SingleSearchViewcontroller中声明为var _sender = self,但它不起作用.
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "searchNavigationToSingleSearch" {
let singleVC = segue.destinationViewController as! SingleSearchViewController
singleVC._sender = self
}
}
Run Code Online (Sandbox Code Playgroud) 我有一个大的 UITableViewCell,里面有 2 个自定义 UIView。其中之一应允许交互(选择和取消选择),而其中之一不应允许交互。
我知道我可以启用或禁用整个单元格或每个子视图上的交互,但如果我禁用 UIView 上的交互,单元格仍然会被选中或取消选择。
例如,有没有办法允许触摸单元格的上半部分而不是底部?
这是我描述的 UITableViewCell 的屏幕截图
我有一个动态原型的表视图,目前以编程方式显示4个元素.我通过数组指定单元格名称(请参阅下面的代码),但我还想在每个单元格的右半部分添加一个小视图,以便在每个标签旁边显示一个小图形.我可以在故事板中查看视图,但它不会动态扩展.基本上我需要找到一种方法来修改这段代码,在每个单元格中添加一个视图,并为这些视图分配一个我已创建的类.
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("LineCell", forIndexPath: indexPath) as! UITableViewCell
cell.textLabel?.text = oneLine.lineNames[indexPath.row]
return cell
}
Run Code Online (Sandbox Code Playgroud)
这是我想要的观点:

另外,如何在载波,时间和电池与表格视图之间留出更多空间?
我正在浏览Swift JSON解析的Argo文档(https://github.com/thoughtbot/Argo),它们提供了一个简单的代码段,该代码段应该检索JSON数据,但是运行它时出现错误。片段是:
// Wherever you receive JSON data:
let json: AnyObject? = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions(0), error: nil)
if let j: AnyObject = json {
let user: User? = decode(j)
}
Run Code Online (Sandbox Code Playgroud)
和我得到的错误是“不允许在最高级别的声明”,在说如果让j ...
为什么这会导致错误?如果不起作用,为什么在他们的github自述文件中呢?
我正在尝试将以下示例转换为 d3 v4 兼容http://bl.ocks.org/ameyms/9184728
我已经能够转换几乎所有内容,但我在使用以下功能时遇到问题:
this.el.transition().delay(100).duration(200).select('.needle').tween('reset-progress', function() {
return function(percentOfPercent) {
var progress = (1 - percentOfPercent) * oldValue;
repaintGauge(progress);
return d3.select(this).attr('d', recalcPointerPos.call(self, progress));
};
});
Run Code Online (Sandbox Code Playgroud)
我收到的错误是this.setAttribute is not a function与返回值有关。我已经验证它recalcPointerPos工作正常,所以我认为问题出在 d3.select(this).attr 语法上。v3 和 v4 之间的这种选择有什么变化吗?
我的R程序中出现错误,说:
as.double(x)中的错误:无法将类型'closure'强制类型为'double'类型的向量
这是我的代码,我无法弄清楚它的来源:
norm.pop = rnorm(100000,10,sd = 1)
exp.pop = rexp(100000, rate = 1/10)
true.mean = 10
norm.func = function(n, N, type)
{
if(type == "N")
pop = norm.pop
else if(type =="E")
pop = exp.pop
all.the.probs = sapply(1:N, function(i)
{
the.sample = sample(pop, size = n, replace = TRUE)
x.bar = mean(the.sample)
sd.norm = sd(sample)/sqrt(n)
z.score = 1.96
upper.fence = x.bar + z.score*sd.norm
lower.fence = x.bar - z.score*sd.norm
if((true.mean >= lower.fence) & (true.mean <= upper.fence))
{
return(1)
}
else
{ …Run Code Online (Sandbox Code Playgroud) 我正在尝试在UIViewController内的UITableView中设置单元格的文本,并且文本没有被更新.此外,即使我有两个打印语句,也没有打印任何内容,因此似乎没有调用这些函数.这是我的代码:
class HomePageViewController: UIViewController, UITextFieldDelegate, UITableViewDelegate {
@IBOutlet weak var flaggedTable: UITableView!
@IBOutlet weak var recentTable: UITableView!
var flaggedSerials = [DataCell]()
var recentlyViewedSerials = [DataCell]()
override func viewDidLoad() {
super.viewDidLoad()
addSerial("FCGPR0TUG07P", status: "Shipped", issues: 6, reworks: 2, index: 0, flagged: false)
}
func addSerial(serial: String, status: String, issues: Int, reworks: Int, index: Int, flagged: Bool)
{
var currentSerial = DataCell()
currentSerial.serial = serial
currentSerial.status = status
currentSerial.issues = "\(issues) Reported Issues"
currentSerial.reworks = "\(reworks) Reported Reworks"
currentSerial.index = index
if …Run Code Online (Sandbox Code Playgroud)