Grand Central Dispatch
当我注意到Swift 3改变了它的语法时,我正在学习.
那么,是这样的:
let queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)
dispatch_async(queue) { () -> Void in
let img1 = Downloader.downloadImageWithURL(imageURLs[0])
dispatch_async(dispatch_get_main_queue(), {
self.imageView1.image = img1
})
}
Run Code Online (Sandbox Code Playgroud)
有什么不同吗?
DispatchQueue.global(qos: .default).async { [weak self]
() -> Void in
let img1 = Downloader.downloadImageWithURL(imageURLs[0])
DispatchQueue.main.async {
()->Void in
self?.imageView1.image = img1
}
}
Run Code Online (Sandbox Code Playgroud)
我应该创建一个包含的变量DispatchQueue.global(qos: .default).async
吗?
我正在尝试存储图像core data
.
我的core data
属性文件要求图像位于NSData
:
import Foundation
import CoreData
extension Item {
@nonobjc public class func fetchRequest() -> NSFetchRequest<TaskItem> {
return NSFetchRequest<TaskItem>(entityName: "Item");
}
@NSManaged public var itemImage: NSData?
}
Run Code Online (Sandbox Code Playgroud)
但是当我试图保存到core data
使用时:
@IBAction func saveBtnTapped(_ sender: AnyObject) {
let context = (UIApplication.shared.delegate as! AppDelegate).persistentContainer.viewContext
let item = Item(context: context)
let imageData: NSData = UIImageJPEGRepresentation(taskImage.image!, 0.2)
item.itemImage = imageData
(UIApplication.shared.delegate as! AppDelegate).saveContext()
}
navigationController?.popViewController(animated: true)
}
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
Cannot convert value of type 'Data?' to …
Run Code Online (Sandbox Code Playgroud) 我正在使用TabBarController
我的应用程序中的四个选项卡.在我正在使用的第二个标签中PageViewcontroller
.PageViewController
包含五页.第一个页面视图包含按钮的位置.点击按钮,我们可以导航到另一个视图.当我们导航到另一个视图时,该选项卡将隐藏.
但我不想隐藏标签栏.
任何人都可以帮助解决这个问题.
谢谢
显然,unobtrusive js
和ModelState
错误不能同时发挥作用。我想要完成的是两件事。当ModelState
发生客户端错误或客户端错误时,validation-summary-errors 类将显示该错误。
我遇到的问题是不使用助手,
<div class="validation-summary-errors" data-valmsg-summary="true">
<ul style="list-style-type:none;"></ul>
</div>
Run Code Online (Sandbox Code Playgroud)
它不会显示ModelState
错误,因此我尝试使用以下代码,
代码 :
if (!ViewData.ModelState.IsValid)
{
<div class="validation-summary-errors" data-valmsg-summary="true">
<ul style="list-style-type:none;"></ul>
</div>
}
else
{
@Html.ValidationSummary()
}
Run Code Online (Sandbox Code Playgroud)
但由于助手的原因,我无法格式化输出(就像从列表中删除项目符号一样)!
这是 JavaScript :
$(document).ready(function () {
$('form').each(function () {
var theForm = $(this);
theForm.submit(function () {
if ($(this).valid()) {
if ($(this).find('.validation-summary-valid').length) {
$('.validation-summary-errors').hide();
}
} else {
if ($(this).find('.validation-summary-errors').length) {
$('.validation-summary-errors')
.addClass('alert alert-danger');
}
}
});
});
});
Run Code Online (Sandbox Code Playgroud) 保护线引发此错误
使用遗留swift:条件绑定的初始化器必须具有Optional类型,而不是'UIView'
private func animateDismissal(context: UIViewControllerContextTransitioning) {
guard let containerView = context.containerView() else {
return
}
...
Run Code Online (Sandbox Code Playgroud)
如果不打开,我该如何退货?
ios ×4
swift ×3
asp.net-mvc ×1
c# ×1
concurrency ×1
core-data ×1
css ×1
iphone ×1
javascript ×1
jquery ×1
objective-c ×1