我通过以下方式读出当前设备的屏幕尺寸:
[UIScreen mainScreen].bounds.size.height;
[UIScreen mainScreen].bounds.size.width;
我经常在游戏的不同类别中需要这个值,所以我想避免一次又一次地计算这些值。在游戏中存储和重用这些值的最佳做法是什么?
答案 0 :(得分:1)
你可以将它们存储在AppDelegate(.h)中,然后在任何需要的地方调用它们。
@interface AppDelegate :UIResponder <UIApplicationDelegate> {
...
}
@property (nonatomic, assign) int MYSCREENHEIGHT;
@property (nonatomic, assign) int MYSCREENWIDHT;
在AppDelegate(.m)中你应该合成它们,然后:
MYSCREENHEIGHT = [UIScreen mainScreen].bounds.size.height;
MYSCREENWIDHT = [UIScreen mainScreen].bounds.size.width;
在其他地方只需打电话给他们:
AppDelegate *appDelGlobal = (AppDelegate *)[[UIApplication sharedApplication] delegate];
int myScreenHeight = appDelGlobal.MYSCREENHEIGHT;
int myScreenwidth = appDelGlobal.MYSCREENWIDHT;
您也可以将它们存储在NSUserDefaults中,但这不适合您。