如何在Swift中单击其中一个单元格时创建静态表视图来创建操作?
我创建了一个静态表,就像应用程序的常规菜单一样,我可以在单击其中一个单元格时直接创建push segue.但与此同时,当我点击其中一个seques时,我想要运行以下功能.通过将单元格拖动到故事板中的UITableView,不会显示"创建操作"选项.
var goToProfiles = PFObject(className: "goToProfile")
goToProfiles["user"] = PFUser.currentUser()!.username
goToProfiles["goToUser"] = usernameLbl.text
goToProfiles.save()
Run Code Online (Sandbox Code Playgroud) 对于我的应用程序,我使用"加载更多底部"属性,如下所示.它实际上工作得很好; 唯一的问题是,当用户到达按钮时,当加载更多功能正在工作时,对于用户来说,它看起来像应用程序冻结了一段时间,因为没有像中的动画视图UIRefreshcontrol.如何在加载新数据之前显示动画.我发现一些UIBottomrefreshcontrol属性作为单独的库,但它们都在Objective-c中.
override func viewDidLoad() {
super.viewDidLoad()
refreshResults()
}
func refreshResults() {
refreshPage = 40
// here the query starts
}
func refreshResults2() {
// here the query starts to add new 40 rows of data to arrays
}
func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) {
if indexPath.row == refreshPage-1 {
refreshPage = refreshPage + 40
refreshResults2()
}
}
Run Code Online (Sandbox Code Playgroud) 我在视图控制器中有两个按钮,下面是一个表视图.使用不同的过滤器参数按下两个按钮之一时,将刷新表视图.实际上,当加载表视图然后单击另一个按钮时,它工作正常,表刷新.但是,当您在表格视图中滚动并且滚动仍然发生时,您按下另一个按钮,我得到"索引超出范围"错误.尝试了很多东西来解决它,但事实并非如此.有任何想法吗?我使用解析作为免费会员资格.我的代码的重要部分如下:
@IBAction func filterType0_clicked(sender: AnyObject) {
if filterTypeVar != 0 {
self.activityIndicator.startAnimating()
self.waitView.hidden = false
filterTypeVar = 0
refreshResults()
}
}
@IBAction func filterType1_clicked(sender: AnyObject) {
if filterTypeVar != 1 {
self.activityIndicator.startAnimating()
self.waitView.hidden = false
filterTypeVar = 1
refreshResults()
}
}
func refreshResults() {
resultsNameArray.removeAll(keepCapacity: false)
resultsUserNameArray.removeAll(keepCapacity: false)
resultsObjectIdArray.removeAll(keepCapacity: false)
var query = PFQuery(className: “posts”)
query.whereKey("userName", containedIn: usersArray)
if filterTypeVar == 0 {
println("no filter")
}
else {
query.whereKey("Type", equalTo: filterTypeVar)
}
query.addDescendingOrder("createdAt")
query.limit = 10
query.findObjectsInBackgroundWithBlock {
(objects:[AnyObject]?, error:NSError?) …Run Code Online (Sandbox Code Playgroud) uitableview ios indexoutofboundsexception parse-platform swift
我想将我从facebook获取的朋友列表ID转换为数组以保存在解析中.我的代码如下所示,但我得到一个"意外发现nil,同时解开一个Optional值"错误.如果需要,我该怎么做才能保存结果以解析并将其作为数组检索?
let fbRequest = FBSDKGraphRequest(graphPath:"/me/friends", parameters: nil);
fbRequest.startWithCompletionHandler { (connection : FBSDKGraphRequestConnection!, result : AnyObject!, error : NSError!) -> Void in
if error == nil {
print("Friends are : \(result)")
if let dict = result as? Dictionary<String, AnyObject>{
let profileName:NSArray = dict["name"] as AnyObject? as! NSArray
let facebookID:NSArray = dict["id"] as AnyObject? as! NSArray
print(profileName)
print(facebookID)
}
}
else {
print("Error Getting Friends \(error)");
}
}
Run Code Online (Sandbox Code Playgroud)
当我在print()中使用下面的代码时,我得到以下结果:
Friends are : {
data = (
{
id = 138495819828848;
name = …Run Code Online (Sandbox Code Playgroud) 我的代码如下
var theReview = addReview.text
let len2 = addReview.text.utf16.count
if len2 > 3000 {
theReview = theReview?.substring(to: (theReview?.index((theReview?.startIndex)!, offsetBy: 3000))!)
}
Run Code Online (Sandbox Code Playgroud)
我的目标是获取文本的前3000个字符(如果长度超过3000个字符)。
但是,我得到以下警告:
不推荐使用'substring(to :)':请使用字符串切片下标以及'partial range upto'运算符
有什么可以替代我的代码。我不是一个非常专业的编码员。因此,任何帮助都会很棒。