我已经和Swift和iOS合作了好几个月了.我熟悉许多方法,但我不够好,我可以不用看就写出来.我很欣赏Stack Overflow过去提供的快速答案,让我回到正轨,我已经生锈了(例如,AsyncTask Android示例).
iOS UITableView对我来说属于这一类.我已经完成了几次,但我忘记了细节.我在StackOverflow上找不到另一个问题,只是要求一个基本的例子,我正在寻找比许多在线教程更短的东西(虽然这个非常好).
我将在下面提供一个答案供我将来参考和你的.
我希望在表视图中的两个单元格之间有一个空格,
我想要这样的细胞,

我怎样才能做到这一点?
我有一个关于UITableView的问题...我有一个UITableViewController,我创建了一个自定义单元格.当我可视化tableView时,我会在分隔线之前看到一个小空格,您可以在此屏幕截图中看到:

为什么?这是默认的可视化?我可以更改一些东西来移除这个白色的左边填充物吗?
我试图将一个单元格作为每个单元格之间的空格 - 这将通过设置alpha = 0来隐藏.在我的表格中,空格单元格将用于奇数行.
请注意,实际的单元格高度为85,但隐藏的单元格高度(即单元格之间的空间)为20.
问题是空间单元高度是85,但不是20,我不知道为什么.可能是单元格未正确加载.
Cell这里是UITableViewCell- 实际的单元格 - 标识符为'Cell'.
Cell2 是标识符"Space"的空间.
上面的每个类都有自己的UITableViewCell类,并且XIB文件也分配给它们.该标识符也被在IB为每个XIB设置.
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier1 = @"Cell";
static NSString *CellIdentifier2 = @"Space";
Cell *cell = (Cell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier1];
if(!cell)
{
NSArray *ar = [[NSBundle mainBundle] loadNibNamed:@"CellView" owner:nil options:nil];
for (id obj in ar)
{
if ([obj isKindOfClass:[Cell class]])
{
cell = (Cell *)obj;
break;
}
}
}
if (indexPath.row % 2 == 1)
{ …Run Code Online (Sandbox Code Playgroud) 我正在swift创建一个ios应用程序,并希望在像Facebook这样的单元格之间添加间距(pic bellow).
我正在为帖子使用自定义笔尖.我知道要使用UITableViewController.我想我会使用分隔符样式,但它没有达到效果.我瞪了几个小时,无法在swift中找到一个有意义的教程!有人可以解释他们是如何使用swift在那里做的吗?谢谢!

非常简单的代码:
func numberOfSectionsInTableView(tableView: UITableView?) -> Int {
return 1
}
func tableView(tableView:UITableView!, numberOfRowsInSection section:Int) -> Int {
return 5
}
func tableView(tableView:UITableView!, cellForRowAtIndexPath indexPath:NSIndexPath!) -> UITableViewCell! {
let cell: BookTableViewCell = BookTableViewCell(style: UITableViewCellStyle.Default, reuseIdentifier: "BookCell")
println("ip: \(indexPath.row)")
cell.bookLabel.text = "test"
return cell
}
Run Code Online (Sandbox Code Playgroud)
在cell.bookLabel.text行我得到这个:
fatal error: unexpectedly found nil while unwrapping an Optional value
Run Code Online (Sandbox Code Playgroud)
BookTableViewCell的定义如下:
class BookTableViewCell: UITableViewCell {
@IBOutlet var bookLabel: UILabel
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
override func setSelected(selected: Bool, animated: Bool) {
super.setSelected(selected, …Run Code Online (Sandbox Code Playgroud) 我到处寻找.试图增加这条线的厚度.无论如何以编程方式执行此操作?谢谢
我有一个UITableView从XIB文件加载自定义UITableViewCell.一切都工作正常,但我的布局要求单元格(都在一个单独的部分内)之间有间距.有没有机会这样做而不必提高行高?
现在怎么样

这是怎么回事

编辑:
这就是今天的代码
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return [[self.cards valueForKeyPath:@"cards"] count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
[ccTableView setBackgroundColor:[UIColor clearColor]];
cardsCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cardsCell"];
if(cell == nil){
NSArray *topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"cardsCell" owner:self options:nil];
cell = [topLevelObjects objectAtIndex:0];
}
NSString *nmCard = [[self.cards valueForKeyPath:@"cards.name"] objectAtIndex:indexPath.row];
cell.descCardLabel.text = nmCard;
return cell;
}
Run Code Online (Sandbox Code Playgroud) 我有一个表有一些自定义.
这是我的代码:
import UIKit
class ViewController: UIViewController, UITableViewDelegate {
var exercises : [String] = ["Swimming", "Running", "Weight Lifting", "Biking", "Climbing"]
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
//Necessary for basic tableView setup. Defines number of rows in a specific section.
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int{
//Setting the amount of rows to the number of elements in exercises. This function returns that.
tableView.backgroundColor = UIColor.clearColor()
return …Run Code Online (Sandbox Code Playgroud) 我试图在 NSTableView 的行之间添加空格,就像它在这里的样子。
然而,目前我的行看起来像这样,行之间的间距为 0。
可以添加这些空格吗?我发现这篇文章介绍了如何做到这一点,但那是针对 UITableView 的,我认为您不能使用 NSTableView 添加部分。我尝试的另一件事是在表视图上使用intercellSpacing ,如下所示:
tableView.intercellSpacing = NSSize(width: 0, height: 80)
Run Code Online (Sandbox Code Playgroud)
然而,这只是增加了每行的高度,而不是增加了它们之间的空间。
最后,我研究了drawSeparator,它看起来很有前途,但文档有限。扩展 NSTableRowView 并重写 drawSeparator 方法是否有效(基本上是通过在空白处绘制作为分隔符)?如果是这样,我将如何让我的表视图使用我的自定义行视图类?
如果这些选项都不起作用,我也愿意伪造效果,也许可以让行的实际内容小于行本身,并使用剩余空间作为行之间的填充。但是,我不确定这是否有效,因为我现在正在使用 NSShadow,它突出显示了每行的边界。
uitableview ×9
ios ×7
swift ×5
iphone ×3
objective-c ×3
cocoa-touch ×2
facebook ×1
ios4 ×1
macos ×1
nstableview ×1
xcode ×1