小编Sha*_*ert的帖子

简单的KVO例子

我想做一个简单的KVO例子,但我遇到了问题.

这是我的*.m文件:

#import "KVO_ViewController.h"

@interface KVO_ViewController ()

@property NSUInteger number;

@end

@implementation KVO_ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.

    [self addObserver:self forKeyPath:@"number" options:NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld context:nil];
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

- (IBAction)incNumber:(id)sender
{
    _number++;
    NSLog(@"%d", _number);
}

-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
{
    NSLog(@"From KVO");

    if([keyPath isEqualToString:@"number"])
    {
        id oldC = [change objectForKey:NSKeyValueChangeOldKey];
        id …
Run Code Online (Sandbox Code Playgroud)

objective-c key-value-observing ios

34
推荐指数
2
解决办法
3万
查看次数

带括号和括号的Vim缩进级别

当我重新使用文件时,gg=G我注意到右括号或括号的缩进与开头的行不匹配.例如(带有> ...的前导标签)

if settings.DEBUG:
>...urlpatterns += patterns('',
>...>...url(r'^media/(?P<path>.*)$', 'django.views.static.serve', {
>...>...>...'document_root': settings.MEDIA_ROOT,
>...>...}),
>...)
Run Code Online (Sandbox Code Playgroud)

我想修复包含此内容的文件中的缩进.对于python我已softtabstop设置为4,shiftwidth设置为4并expandtab设置.当我这样做gg=G时导致以下结果:

if settings.DEBUG:
    urlpatterns += patterns('',
            url(r'^media/(?P<path>.*)$', 'django.views.static.serve', {
                'document_root': settings.MEDIA_ROOT,
                }),
            )
Run Code Online (Sandbox Code Playgroud)

这里有两个问题.第一个是结束括号与其左括号的空白级别不匹配,它们缩进到与括号内的代码相同的级别.这可以看到(第二行中的第二行及其)在最后一行中的匹配以及{ 第三行中的匹配}以及第五行中的匹配.我希望如此,结束括号在与开头括号相同的水平上匹配.

我的第二个问题是,左括号后的缩进是新块的缩进的两倍,甚至是打开后的缩进{.我认为这可能是Python文件类型缩进的一部分,但我想知道如何阻止它,所以所有的缩进都是4宽.

python vim

6
推荐指数
1
解决办法
3844
查看次数

标签 统计

ios ×1

key-value-observing ×1

objective-c ×1

python ×1

vim ×1