この質問が多く寄せられていることは知っていますが、Objective-C は初めてです。最初のviewcontroller.hの私のコード:
@interface ViewController : UIViewController
@property (nonatomic) int mutecounter;
@property (nonatomic) ViewController *targetLevelController;
@end
.m ファイルの最初のビューコントローラーの私のコード:
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
@synthesize mutecounter;
- (void)viewDidLoad
{
[super viewDidLoad];
NSURL *musicFile = [[NSBundle mainBundle] URLForResource:@"Ambler" withExtension:@"mp3"];
self.backgroundMusic = [[AVAudioPlayer alloc] initWithContentsOfURL:musicFile error:nil];
self.backgroundMusic.numberOfLoops = -1;
self.backgroundMusic.volume = 0.3;
[self.backgroundMusic play];
[self.muteButtonOutlet setBackgroundImage:[UIImage imageNamed:@"mutebutton.png"] forState: UIControlStateNormal];
_targetLevelController=[[ViewController alloc]init];
_targetLevelController.mutecounter = mutecounter;
}
- (IBAction)muteButton:(id)sender {
if (mutecounter % 2 == 0){
self.backgroundMusic.volume = 0;
mutecounter = mutecounter + 1;
[self.muteButtonOutlet setBackgroundImage:[UIImage imageNamed:@"unmutebutton.png"] forState: UIControlStateNormal];
} else {
self.backgroundMusic.volume = 0.3;
mutecounter = mutecounter + 1;
[self.muteButtonOutlet setBackgroundImage:[UIImage imageNamed:@"mutebutton.png"] forState: UIControlStateNormal];
}
}
そして、2番目のViewcontroller.hの私のコード:
@interface LevelController : UIViewController
- (IBAction)muteButton:(id)sender;
@end
そして2番目のViewcontroller.mの私のコード
#import "LevelController.h"
#import "ViewController.h"
@interface LevelController ()
@end
@implementation LevelController
int mutecounter2;
- (void)viewDidLoad
{
[super viewDidLoad];
NSURL *musicFile = [[NSBundle mainBundle] URLForResource:@"Ambler" withExtension:@"mp3"];
self.backgroundMusic = [[AVAudioPlayer alloc] initWithContentsOfURL:musicFile error:nil];
self.backgroundMusic.numberOfLoops = -1;
self.backgroundMusic.volume = 0.3;
[self.backgroundMusic play];
ViewController *targetLevelController=[[ViewController alloc]init];
mutecounter2 = targetLevelController.mutecounter;
if (mutecounter2 % 2 == 0){
self.backgroundMusic.volume = 0;
[self.muteButtonOutlet setBackgroundImage:[UIImage imageNamed:@"mutebutton.png"] forState: UIControlStateNormal];
} else {
self.backgroundMusic.volume = 0.3;
[self.muteButtonOutlet setBackgroundImage:[UIImage imageNamed:@"unmutebutton.png"] forState: UIControlStateNormal];
}
}
- (IBAction)muteButton:(id)sender {
if (mutecounter2 % 2 == 0){
self.backgroundMusic.volume = 0;
mutecounter2 = mutecounter2 + 1;
[self.muteButtonOutlet setBackgroundImage:[UIImage imageNamed:@"unmutebutton.png"] forState: UIControlStateNormal];
} else {
self.backgroundMusic.volume = 0.3;
mutecounter2 = mutecounter2 + 1;
[self.muteButtonOutlet setBackgroundImage:[UIImage imageNamed:@"mutebutton.png"] forState: UIControlStateNormal];
}
}
問題は、コードが機能していないことです。誰かが私を助けることができますか?私は常に、mutecounter2 で値 0 を取得します。しかし、それは1か2か3か何かでなければなりません。ありがとうマティス