如何在 Xcode 中为我的表格视图添加上边距?
Posted
技术标签:
【中文标题】如何在 Xcode 中为我的表格视图添加上边距?【英文标题】:How can I add a top margin to my tableview in Xcode? 【发布时间】:2015-08-21 02:30:02 【问题描述】:我正在尝试在表格视图的第一个单元格的最顶部添加图像。如何使表格视图具有上边距?现在,图像只是与 tableview 重叠。我试图让表格视图下降一点。我不想让它变小或类似的东西。我只想在 tableview 的顶部添加一个按钮。
//
// usersVC.swift
// CaastRun
//
// Created by Computer on 5/23/15.
// Copyright (c) 2015 Caast. All rights reserved.
//
import UIKit
class usersVC: UIViewController, UITableViewDataSource, UITableViewDelegate
@IBOutlet weak var resultsTable: UITableView!
var resultsNameArray = [String]()
var resultsUserNameArray = [String]()
var resultsImageFiles = [PFFile]()
override func viewDidLoad()
super.viewDidLoad()
let theWidth = view.frame.size.width
let theHeight = view.frame.size.height
resultsTable.frame = CGRectMake(0, 0, theWidth, theHeight)
override func didReceiveMemoryWarning()
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
override func viewDidAppear(animated: Bool)
resultsNameArray.removeAll(keepCapacity: false)
resultsUserNameArray.removeAll(keepCapacity: false)
resultsImageFiles.removeAll(keepCapacity: false)
var query = PFUser.query()
query!.whereKey("username", notEqualTo: PFUser.currentUser()!.username!)
query!.findObjectsInBackgroundWithBlock
(objects:[AnyObject]?, error:NSError?) -> Void in
if error == nil
for object in objects!
self.resultsNameArray.append(object.objectForKey("profileName") as! String)
self.resultsImageFiles.append(object.objectForKey("photo") as! PFFile)
self.resultsUserNameArray.append(object.objectForKey("username") as! String)
self.resultsTable.reloadData()
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int
return resultsNameArray.count
func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat
return 64
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
var cell:usersCell = tableView.dequeueReusableCellWithIdentifier("Cell") as! usersCell
cell.profileLbl.text = self.resultsNameArray[indexPath.row]
cell.usernameLbl.text = self.resultsUserNameArray[indexPath.row]
var query = PFQuery(className: "follow")
query.whereKey("user", equalTo: PFUser.currentUser()!.username!)
query.whereKey("userToFollow", equalTo: cell.usernameLbl.text!)
query.countObjectsInBackgroundWithBlock
(count:Int32, error:NSError?) -> Void in
if error == nil
if count == 0
cell.followBtn.setTitle("Follow", forState: UIControlState.Normal)
else
cell.followBtn.setTitle("Following", forState: UIControlState.Normal)
self.resultsImageFiles[indexPath.row].getDataInBackgroundWithBlock
(imageData:NSData?, error:NSError?) -> Void in
if error == nil
let image = UIImage(data: imageData!)
cell.imgView.image = image
return cell
@IBOutlet weak var searchText: UITextField!
@IBAction func searchButton(sender: AnyObject)
resultsNameArray.removeAll(keepCapacity: false)
resultsUserNameArray.removeAll(keepCapacity: false)
resultsImageFiles.removeAll(keepCapacity: false)
var query = PFUser.query()
query!.whereKey("username", notEqualTo: PFUser.currentUser()!.username!)
query!.whereKey("profileName", containsString: self.searchText.text)
query!.findObjectsInBackgroundWithBlock
(objects:[AnyObject]?, error:NSError?) -> Void in
if error == nil
for object in objects!
self.resultsNameArray.append(object.objectForKey("profileName") as! String)
self.resultsImageFiles.append(object.objectForKey("photo") as! PFFile)
self.resultsUserNameArray.append(object.objectForKey("username") as! String)
self.resultsTable.reloadData()
【问题讨论】:
这是一个 UIViewController 你应该从 UITableViewController 继承,尝试在你的类声明中改变它 我不断收到断点错误。然后它把我引向我的应用程序委托,它说我有一个 sigabrt 错误,但我什至没有碰过我的故事板。 【参考方案1】:我不确定我是否理解您的问题,如果您想在表格和视图之间留出空白,请尝试以下操作:
斯威夫特 3
self.tableView.contentInset = UIEdgeInsets(top: 20,left: 0,bottom: 0,right: 0)
斯威夫特 2
self.tableView.contentInset = UIEdgeInsetsMake(20, 0, 0, 0);
【讨论】:
我把这个放在哪里?我对xcode有点陌生。我的视图控制器? 只需从 tableViewController 类中添加 viewDidLoad 出于某种奇怪的原因,它显示“找不到成员内容集” 你可能需要发布你的一些代码,否则很难判断出什么问题 很老的一个要重新访问,所以假设你找到了一个解决方案,但看起来你没有大写“tableview.contentInset”的“插入”部分以上是关于如何在 Xcode 中为我的表格视图添加上边距?的主要内容,如果未能解决你的问题,请参考以下文章
如何将约束添加到相对于父视图边距的按钮,使其显示为距上边距 30 和距右边距 30
如何在我的 podfile 中为我的 Xcode 项目指定多个目标?