这是MyScene.h
:
#import <SpriteKit/SpriteKit.h>
@interface MyScene : SKScene
@property (nonatomic) int monstersDestroyed;
@end
这是
MyScene.m
:if( someCondition ){
self.monsterPassed++;
NSLog(@"MonsterPassed : %d",self.monsterPassed);
}
控制台将显示“ MonsterPassed:0” ...“ MonsterPassed:1” ...等等。很好
这是
ViewController.h
:#import <UIKit/UIKit.h>
#import <SpriteKit/SpriteKit.h>
@interface ViewController : UIViewController
@property (weak, nonatomic) IBOutlet UILabel *DestroyeCountLabel;
@end
这是
ViewController.m
:#import "ViewController.h"
#import "MyScene.h"
@interface ViewController ()
@property (nonatomic) AVAudioPlayer * backgroundMusicPlayer;
@end
@implementation ViewController
- (void)viewWillLayoutSubviews
{
[super viewWillLayoutSubviews];
MyScene *monsterDestroyerValue = [[MyScene alloc]init];
self.DestroyeCountLabel.text =[NSString stringWithFormat:@"Monster Destroyed:%d",monsterDestroyerValue.monstersDestroyed];
...
}
问题是在
ViewController.m
中它不会显示在我的标签中,而只会显示“ Monster Destroyed:0”。为什么?我已经搜索过,但是找不到任何解决方案。 最佳答案
您只需设置一次DestroyeCountLabel的文本。在此之后设置monstersDestroyed变量将不会自动更新DestroyeCountLabel。有无数种方法可以做到这一点。我的建议是在深入研究Apple的一些教程之前,可以更好地掌握编程知识。
关于ios - 如何获取另一个类的int变量的int值?(XCode 5)我很困惑,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24616113/