.mmファイルに次のコードがあります。
[UIView animateWithDuration:0.3 animations:^{
self.titleLabel.alpha = 0.0;
} completion:^(BOOL finished) { //<<compiler complains here
self.titleLabel.alpha = 1.0;
}];
しかし、コンパイラエラーが発生します:
タイプ'void(^)(BOOL)'のパラメーターをタイプ'void(^)(int)'の右辺値で初期化できません
上記の行に。コードは通常の.mファイルで問題ありません。私は何か間違ったことをしていますか、それともコンパイラに問題がありますか?
更新:ヘッダーのインポートは次のとおりです。
#import <UIKit/UIKit.h>
および.mmのインポートは(打ち切り)です:
#import "XXSelectViewController.h"
#import "XXViewController.h"
#import "AboutViewController.h"
#import "HighScoresViewController.h"
#import "GameModel.h"
更新2:また、次の行に警告が表示されます。
- (void)viewDidDisappear:(BOOL)animated
警告:
'viewDidDisappearの実装における競合するパラメーター型:':'BOOL'(別名'signed char')vs'int'
このプロジェクトではPowerVRツールを使用しており、PVRShell.hとPVRTResourceFile.hには次の行があります。
typedef bool (*PFNReleaseFileFunc)(void* handle);
typedef bool (*PFNReleaseFileFunc)(void* handle);
これが問題と関係があるかどうかはわかりませんが...