简短实用的Objective-C片段?

Epa*_*aga 25 xcode objective-c code-snippets xcode4

从XCode 4开始,现在有一个Code Snippets部分,在输入时通过自动完成提供片段.我对你们都存储在那里的片段非常感兴趣.哪些片段可以节省您最多的时间(以及为什么)?

请仅发布实际的片段(意思是没有讽刺的"不需要没有stinkin'片段",也没有"我喜欢<XYZ>"的片段),只有短片和甜片(即不超过~20行)至多,最多...).如果一个片段显然没用,也可以解释为什么你认为它是.;)

Rob*_*bin 10

如果这很重要,我不会这样,但每当我UITableView在任何一个视图控制器中添加一个时,我总是使用这个片段.

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *cellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
    if(cell == nil)
    {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle 
                                      reuseIdentifier:cellIdentifier];
            // Do something here......................
    }
    // Do something here too .........................
    return cell;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return ;
}

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return ;
}
Run Code Online (Sandbox Code Playgroud)

如果您不使用UITableViewController显示表格内容,它非常方便.


zou*_*oul 9

在给定的秒数后调度当前队列上的块:

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, <#seconds#>*1e9),
    dispatch_get_current_queue(), <#block#>);
Run Code Online (Sandbox Code Playgroud)


obi*_*ahn 7

这是我的两个评论片段.我经常使用它们.

标题评论:

// ----------------------------------------------------------------------------------------------------------------
# pragma mark -
# pragma mark <#comment#>
# pragma mark -
// ----------------------------------------------------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)

子评论:

// ----------------------------------------------------------------------------------------------------------------
//  <#comment#>
// ----------------------------------------------------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)


zou*_*oul 6

我经常添加具有类扩展的私有类接口:

@interface <#ClassName#> ()
@end
Run Code Online (Sandbox Code Playgroud)

这是为了使公共界面完全不受内部内容的影响,特别是现在我们可以拥有纯粹的综合属性(例如gist).


小智 5

这里有几个系列:

https://github.com/mneorr/snippie/tree/master/backup

和这里:

https://github.com/jad/xcode-code-snippets

你可以坚持在这个文件夹中:

~/Library/Developer/Xcode/UserData/CodeSnippets
Run Code Online (Sandbox Code Playgroud)


Aks*_*ade 5

调试此代码段非常有用.它让您知道班级名称,功能名称,您也可以添加您的评论.

NSLog(@"%s [Line %d] %@ ", __PRETTY_FUNCTION__, __LINE__,<#comment#>);
Run Code Online (Sandbox Code Playgroud)