Questions tagged «swift»

Swift是Apple Inc.针对其平台和Linux开发的一种安全,快速且具有表现力的通用编程语言。Swift是开源的。仅将标记用于有关语言功能或在Swift中需要代码的问题。将标签[ios],[ipados],[macos],[watch-os],[tvos],[cocoa-touch]和[cocoa]用于有关平台或框架的(语言不可知)问题。


5
Swift常数:Struct或Enum
我不确定两者中哪个最好定义常量。结构或枚举。每次我使用与否,都会复制一个结构吗?当我想到带有static let常量的结构时,我认为它会一直复制是没有意义的。但是,如果它不会被复制,那我拿走什么都没关系? 选择结构或枚举有什么优势? 弗朗西斯科说使用Struct的。 雷·温德利希说要用枚举。但是我缺乏理由。

13
如何使ScrollView中的TableView滚动行为自然
我需要做一个配置很奇怪的程序。 如下图所示,主视图是UIScrollView。然后,它的内部应该有一个UIPageView,而PageView的每个页面都应该有一个UITableView。 到目前为止,我已经完成了所有这一切。但我的问题是,我想滚动到表现 自然。 接下来是我自然的意思。当前,当我在其中一个UITableViews上滚动时,它将滚动tableview(而不是scrollview)。但是我希望它滚动ScrollView,除非scrollview无法滚动导致它到达顶部或底部(在那种情况下,我希望它滚动tableview)。 例如,假设我的滚动视图当前滚动到顶部。然后,我将手指放在(显示当前页面的)表格视图上,然后开始向下滚动。在这种情况下,我希望scrollview滚动(没有tableview)。如果我一直向下滚动滚动视图并到达底部,如果我从显示屏上移开手指并将其放回tebleview上方并再次向下滚动,则我希望我的表视图现在向下滚动,因为滚动视图已到达其底部并且没有滚动能够保持滚动。 你们对如何实现此滚动有任何想法吗? 我真的迷失了。任何帮助将不胜感激:( 谢谢!

8
Swift:检查泛型类型是否符合协议
我有一个这样定义的协议: protocol MyProtocol { ... } 我也有一个通用的结构: struct MyStruct <T> { ... } 最后,我有一个通用函数: func myFunc <T> (s: MyStruct<T>) -> T? { ... } 我想在函数内部测试T类型是否符合MyProtocol。本质上,我希望能够做到(〜伪代码): let conforms = T.self is MyProtocol 但这会引发编译器错误: error: cannot downcast from 'T.Type' to non-@objc protocol type 'MyProtocol' let conforms = T.self is MyProtocol ~~~~~~ ^ …
78 generics  swift 

14
Swift下划线按钮文字
我有UIButton。在界面构建器中,我将其标题设置为“已归因”。如何在Swift的代码中使标题加下划线? @IBOutlet weak var myBtn: UIButton! 我创建了一个在此按钮的touchUpInside事件上调用的函数: var attributedString = NSMutableAttributedString(string:"new text") var attrs = [ NSFontAttributeName : UIFont.systemFontOfSize(19.0), NSForegroundColorAttributeName : UIColor.redColor() ] var gString = NSMutableAttributedString(string:"g", attributes:attrs) attributedString.appendAttributedString(gString) myBtn.titleLabel?.attributedText = attributedString; 但是仍然没有结果。我还需要知道如何访问下划线属性。文字,大小和颜色保持不变。
78 ios  xcode  swift 

11
如何使用Swift制作随机颜色
如何使用Swift创建随机颜色函数? import UIKit class ViewController: UIViewController { var randomNumber = arc4random_uniform(20) var randomColor = arc4random() //Color Background randomly func colorBackground() { // TODO: set a random color view.backgroundColor = UIColor.yellow } }
78 swift  random  colors  uicolor  func 

9
Swift默认AlertViewController突破约束
我正在尝试使用.actionSheet样式的默认AlertViewController。由于某种原因,警报导致约束错误。只要没有通过按钮触发(显示)alertController,整个视图就不会出现约束错误。难道这是Xcode的错误? 我得到的确切错误是这样的: 2019-04-12 15:33:29.584076+0200 Appname[4688:39368] [LayoutConstraints] Unable to simultaneously satisfy constraints. Probably at least one of the constraints in the following list is one you don't want. Try this: (1) look at each constraint and try to figure out which you don't expect; (2) find the code that added the …

6
使用UITableViewAutomaticDimension在适当位置更新UITableViewCell之后的滚动滚动
我正在构建一个具有供用户提交的帖子的供稿视图的应用。此视图具有UITableView一个自定义UITableViewCell实现。在此单元格中,我还有另一个UITableView用于显示评论。要点是这样的: Feed TableView PostCell Comments (TableView) CommentCell PostCell Comments (TableView) CommentCell CommentCell CommentCell CommentCell CommentCell 初始Feed将下载3条评论进行预览,但是如果有更多评论,或者用户添加或删除评论,我想PostCell通过在其中添加或删除CommentCells评论表来更新Feed表视图中的的PostCell。我目前正在使用以下帮助程序来完成此任务: // (PostCell.swift) Handle showing/hiding comments func animateAddOrDeleteComments(startRow: Int, endRow: Int, operation: CellOperation) { let table = self.superview?.superview as UITableView // "table" is outer feed table // self is the PostCell that is updating it's …
78 ios  uitableview  swift  ios8 

15
缩放UIButton动画-Swift [关闭]
关闭。这个问题需要调试细节。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow的主题。 去年关闭。 改善这个问题 我正在尝试UIButton为其单击时进行缩放动画,但是我想要完成的是单击按钮时我需要将UIButton其缩小到内部,然后使其恢复到相同的大小(如气泡)。 我尝试了以下方法: button.transform = CGAffineTransformMakeScale(-1, 1) UIView.animateWithDuration(0.5, animations: { () -> Void in button.transform = CGAffineTransformMakeScale(1,1) })

11
本月的第一天和最后一天迅速
我正在设法迅速获得每月的第一天和最后一天。 到目前为止,我有以下内容: let dateFormatter = NSDateFormatter() let date = NSDate() dateFormatter.dateFormat = "yyyy-MM-dd" let calendar = NSCalendar.currentCalendar() let components = calendar.components([.Year, .Month, .Day, .Hour, .Minute, .Second], fromDate: date) let month = components.month let year = components.year let startOfMonth = ("\(year)-\(month)-01") 但是我不确定如何获得最后的约会。我是否缺少内置方法?显然,它必须考虑leap年等。
78 ios  swift  nsdate  nscalendar 


7
Swift中的ChangeCharactersInRange应该如何工作?
我正在使用shouldChangeCharactersInRange作为使用即时类型搜索的方式。 但是我有一个问题,在文本字段实际更新之前应该调用shouldChangeCharactersInRange: 在目标C中,我使用以下方法解决了这个问题: -(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { NSString * searchStr = [textField.text stringByReplacingCharactersInRange:range withString:string]; return YES; } 但是,我尝试用Swift编写此代码: func textField(textField: UITextField!, shouldChangeCharactersInRange range: NSRange, replacementString string: String!) -> Bool { let txtAfterUpdate:NSString = self.projectSearchTxtFld.text as NSString txtAfterUpdate.stringByReplacingCharactersInRange(range, withString: string) self.callMyMethod(txtAfterUpdate) return true } 在获得值之前,该方法仍会被调用?

19
以编程方式导航到另一个视图控制器/场景
从第一个视图控制器导航到第二个视图控制器时收到错误消息。我的编码就是这样 let vc = LoginViewController(nibName: "LoginViewController", bundle: nil) self.navigationController?.pushViewController(vc, animated: true) 问题是我总是收到这种错误消息 2014-12-09 16:51:08.219 XXXXX[1351:60b] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'NSBundle </var/mobile/Applications/FDC7AA0A-4F61-47E7-955B-EE559ECC06A2/XXXXX.app> (loaded)' with name 'LoginViewController'' *** First throw call stack: (0x2efcaf0b 0x39761ce7 0x2efcae4d 0x31b693f9 0x31ac1eaf 0x3191e365 0x317fe895 0x318a930d 0x318a9223 …


11
在iOS中运行长任务时加载“叠加”
在执行长任务时在Swift IOS应用程序中加载叠加的示例是什么。从远程服务器加载数据的示例。我用谷歌搜索,但没有找到任何答案。 更新: 感谢@Sebastian Dressler,这是简单的方法。我更新了代码,运行起来很酷 public class LoadingOverlay{ var overlayView = UIView() var activityIndicator = UIActivityIndicatorView() class var shared: LoadingOverlay { struct Static { static let instance: LoadingOverlay = LoadingOverlay() } return Static.instance } public func showOverlay(view: UIView) { overlayView.frame = CGRectMake(0, 0, 80, 80) overlayView.center = view.center overlayView.backgroundColor = …
77 ios  swift  uiview  overlay 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.