我有一个随机UIWebView
使用崩溃iOS8.1和UIWebView
,使用iPhone5的.在我的测试中,崩溃不会出现在iOS7上.
我创建了这个github存储库来重现崩溃:https: //github.com/crarau/WebViewCrash
基本上我正在添加一个UIWebView
并加载www.amazon.com
随机的应用程序崩溃的上WebThread
与EXC_ARM_BREAKPOINT
在控制台上启用Zombie跟踪后,会显示以下消息:
[UIViewAnimationState release]: message sent to deallocated instance 0x14deff70
Run Code Online (Sandbox Code Playgroud)
这里UIView
加载时会发生什么:
[super viewDidLoad];
NSURLRequest * urlRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.amazon.com"]];
self.webView.layer.cornerRadius = 0;
self.webView.userInteractionEnabled = YES;
self.webView.multipleTouchEnabled = YES;
self.webView.backgroundColor = [UIColor clearColor];
self.webView.scrollView.scrollEnabled = NO;
self.webView.scrollView.bounces = NO;
[self.webView loadRequest:urlRequest];
Run Code Online (Sandbox Code Playgroud)
异常堆栈跟踪:
Exception Type: EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000001, 0x000000000000defe
Triggered by Thread: 2
Thread …
Run Code Online (Sandbox Code Playgroud) 正如我的问题标题说我怎么能转换CGPoint
成NSValues
所以我可以存储然后进入数组在swift中.
在Objective-C中,我们可以这样做:
// CGPoint converted to NSValue
CGPoint point = CGPointMake(9, 9);
NSValue *pointObj = [NSValue valueWithCGPoint:point];
Run Code Online (Sandbox Code Playgroud)
但有人能告诉我,我怎么能在swift中做到这一点?
提前致谢.
我想使用swift在我的表视图中使用延迟加载概念.在我的表视图中,我显示了多个包含产品图像和产品名称的单元格.请帮我解决问题.
从双打中删除尾随零的函数是什么?
var double = 3.0
var double2 = 3.10
println(func(double)) // 3
println(func(double2)) // 3.1
Run Code Online (Sandbox Code Playgroud) 事先,我道歉,因为我会说我是iOS编程的初学者.
我想使用,UIScrollView
因为要显示的内容超出了屏幕的高度.因此,我只想垂直滚动而不是水平滚动.
我正在使用故事板来绘制视图AutoLayout
.
下面的是我的截图UIViewController
与UIScrollView
:
然后我将Label更改为这样的大文本
override func viewDidLoad() {
super.viewDidLoad()
self.label1Label.text = "Seize jours après la chute du président Blaise Compaoré, le Burkina Faso a un nouveau chef d'EtatA l'issue d'ultimes tractions, civils et militaires se sont accordés, lundi 17 novembre, sur le nom du diplomate Michel KafandoSeize jours après la chute du président Blaise Compaoré, le Burkina Faso a un nouveau chef d'EtatA l'issue d'ultimes tractions, civils et militaires se sont …
Run Code Online (Sandbox Code Playgroud) 我一直在寻找答案,但只找到了segues的答案.
我有viewController1
一个可以按下的按钮viewController2
.没有代码,我通过Interface builder进行设置.在viewController2
我有一个按钮,驳回本身
self.dismissViewControllerAnimated(true, completion, nil)
Run Code Online (Sandbox Code Playgroud)
我想从viewController2
后面传递一个字符串到viewController1
视图被解除时.我该怎么做呢?另外,我正在使用swift.
提前致谢!
我是OS X Cocoa编程的新手,但已经决定使用新的Swift语言.
我有NSTableView
1500行(将更多)和7列.有一个复选框列,其余是文本字段,一个带有日期格式,另一个带有货币格式器.我首先将其设置为基于单元格.滚动是黄油平滑的(我甚至做了一个测试,增加了100万行,仍然很平滑).这是在小牛队.
然后我升级到Yosemite,滚动性能明显降低.在表视图上启用Core动画层复选框改进了这一点,但仍然比在小牛队中更糟糕.
在我试图提高优胜美地的滚动性能时,我遇到了"基于视图"的NSTableViews.从文档中可以看出,基本上不应该使用基于单元格的表视图,并且只支持旧项目.
因此,我将我的表转换为基于视图的表视图.样本简单概念,没什么复杂的.滚动表现绝对可怕.如果你滚得非常慢,它就足够平滑,但是一旦你开始滚动得更快,就像它没有足够的缓冲一样,它会开始出现口吃和抽搐.此外,当NSTableview
填充时,对焦和散焦窗口需要一秒钟或更长时间(我再次在小牛队中尝试过这个并不存在,滚动也好一点,但仍然没有接近基于单元格).
基于视图NSTableviews
总是不利于滚动性能吗?如果是这样,苹果为什么建议使用基于细胞的NSTableviews
.
此外,一些应用程序,如safari和Reeder2即使在约塞米蒂也有黄油平滑滚动.他们是如何做到这一点的?
我是否遗漏了某些东西,或者OS X的性能是否会随着每件新事物而下地狱?即
小牛队>优胜美地队
基于单元格>基于视图
旧>新
任何帮助深表感谢.谢谢!
我正在创建iMessage应用程序并尝试将音频或视频文件发送给其他用户.
视频文件工作正常,但它与音频文件无法正常工作.
我目前的代码是:
let destinationFilename = mp3FileNames[i]
let destinationURL = docDirectoryURL.appendingPathComponent(destinationFilename)
if let conversation = activeConversation {
let layout = MSMessageTemplateLayout()
layout.image = UIImage.init(named: "audio-x-generic-icon")
layout.mediaFileURL = destinationURL
layout.caption = selectedSongObj.name
let message = MSMessage()
message.layout = layout
message.url = URL(string: "emptyURL")
conversation.insert(message, completionHandler: nil)
return
}
Run Code Online (Sandbox Code Playgroud)
看起来好像layout.mediaFileURL = destinationURL
没有在邮件中添加任何文件.
当我尝试使用上面的代码发送文件时.它看起来如下所示:
它看起来很好,但没有音频可玩,但如果我这样尝试:
let destinationFilename = mp3FileNames[i]
let destinationURL = docDirectoryURL.appendingPathComponent(destinationFilename)
if let conversation = activeConversation {
conversation.insertAttachment(destinationURL!, withAlternateFilename: nil, completionHandler: nil)
return
}
Run Code Online (Sandbox Code Playgroud)
以上代码的结果是:
我可以播放该消息的音频,因为它就在那里.但是该消息的问题是我无法附加任何图像或标题.
如何将图像和音频文件附加到同一条消息中.
如果可能而不是图像,我可以添加GIF吗?
非常感谢任何帮助,谢谢.
我使用addObserver
API来接收通知:
NSNotificationCenter.defaultCenter().addObserver(self, selector: "methodOFReceivedNotication:", name:"NotificationIdentifier", object: nil)
Run Code Online (Sandbox Code Playgroud)
我的方法是:
func methodOFReceivedNotication(notification: NSNotification){
//Action take on Notification
}
Run Code Online (Sandbox Code Playgroud)
是的,它有效!但是当我将方法更改methodOFReceivedNotication
为私有时:
private func methodOFReceivedNotication(notification: NSNotification){
//Action take on Notification
}
Run Code Online (Sandbox Code Playgroud)
xCode发给我一个错误: unrecognized selector sent to instance
如何在目标时调用私有方法self
?我不想将methodOFReceivedNotication
方法暴露给任何其他人.
我正在研究一个使用Swift构建的项目,我正在尝试创建一个字典来存储一个名为Pixel的自定义类的对象(KEY,用于存储RGB值等颜色信息)和int值(Value,用于计算多少相同颜色出现在同一图像上的次数).
如果这是在C#中,则工作代码应为:
Dictionary<Pixel, int> colorDictionary = new Dictionary< Pixel, int> ()
;
在Swift中,我试过:
var colorDictionary = Dictionary<Pixel, Int>()
Run Code Online (Sandbox Code Playgroud)
但是,我得到的错误:
"类型'Pixel'不符合协议'Hashable'"
我该怎么做才能解决这个问题?非常感谢!
swift ×9
ios ×6
iphone ×2
autolayout ×1
cgpoint ×1
cocoa ×1
dictionary ×1
double ×1
imessage ×1
ios10 ×1
ios8 ×1
macos ×1
nstableview ×1
nsvalue ×1
objective-c ×1
scroll ×1
swift3 ×1
trailing ×1
uiscrollview ×1
uitableview ×1
uiview ×1
uiwebview ×1
xcode6 ×1