Objective c 不确定的NSProgressIndicator将不会设置动画

Objective c 不确定的NSProgressIndicator将不会设置动画,objective-c,animation,ibaction,nsprogressindicator,Objective C,Animation,Ibaction,Nsprogressindicator,所以我有一个简单的UI,一个开始按钮,一些文本/标签和一个进度条。单击开始按钮时,NSPROGRESS指示器应设置动画。这是我的密码: @synthesize progressBar = progressBar; /* Some code and setup stuffs... */ - (IBAction)startAction:(id)sender { NSLog(@"Button clicked."); NSLog(@"Beginning Socketry and soc

所以我有一个简单的UI,一个开始按钮,一些文本/标签和一个进度条。单击开始按钮时,NSPROGRESS指示器应设置动画。这是我的密码:

@synthesize progressBar = progressBar;
 /* Some code and setup stuffs... */
- (IBAction)startAction:(id)sender {
    NSLog(@"Button clicked.");
    NSLog(@"Beginning Socketry and socket creation...");
    [progressBar setUsesThreadedAnimation:YES];
    [progressBar setIndeterminate:YES];
    [progressBar startAnimation:progressBar];
}
我检查了多个源代码(Apple Developer Portal等),但都不起作用。我不需要这个指示器,但如果我可以的话,那就太好了。 另外,这是我的AppDelegate.h文件:

#import <Cocoa/Cocoa.h>

@interface AppDelegate : NSObject <NSApplicationDelegate>

@property (assign) IBOutlet NSWindow *window;

@property (readonly, strong, nonatomic) NSPersistentStoreCoordinator *persistentStoreCoordinator;
@property (readonly, strong, nonatomic) NSManagedObjectModel *managedObjectModel;
@property (readonly, strong, nonatomic) NSManagedObjectContext *managedObjectContext;
@property (weak) IBOutlet NSProgressIndicator *progressBar;
- (IBAction)saveAction:(id)sender;

- (IBAction)startAction:(id)sender;

- (IBAction)changeStatus:(id)sender;

- (IBAction)changeProgress:(id)sender;

@end
#导入
@接口AppDelegate:NSObject
@属性(分配)窗口*窗口;
@属性(只读、强、非原子)NSPersistentStoreCoordinator*persistentStoreCoordinator;
@属性(只读、强、非原子)NSManagedObjectModel*managedObjectModel;
@属性(只读、强、非原子)NSManagedObjectContext*managedObjectContext;
@属性(弱)IBOutlet NSProgressIndicator*progressBar;
-(iAction)saveAction:(id)发送方;
-(iAction)startAction:(id)发送方;
-(iAction)changeStatus:(id)发送方;
-(iAction)变更进度:(id)发送方;
@结束

转到进度指示器的属性检查器,并按下图所示进行设置:

见下面的代码:

@synthesize progressBar;
- (IBAction)startAction:(id)sender {
    [progressBar setHidden:NO];
    [progressBar setIndeterminate:YES];
    [progressBar setUsesThreadedAnimation:YES];
    [progressBar startAnimation:nil];
}

您是否已验证progressBar不是nil(
NSLog(@“progressBar:%@”,progressBar);
)?如果nil在IB中设置了你的连接。也要确保你没有通过将它设置为未添加到视图层次结构的新进度条来覆盖它。好吧,我按照你说的做了,它不是nil,但我会很快尝试一些东西。实际上,我刚刚删除了头文件中的引用,并从.xib中重新删除了引用,然后再次运行它,单击“开始”按钮,它工作得非常好!我认为这是你提出的第二个问题,超越了原来的问题。前几天我刚开始学习Objective-C,它的语法让我很困惑。谢谢你的帮助!:D@Ech0riginal当您开始看到可以一起交谈的对象时,会变得更容易