gpt4 book ai didi

iphone - 可以将 if 语句放在#define 中吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:26:01 24 4
gpt4 key购买 nike

我正在尝试修改现有库以同时适用于 iPhone 和 iPad。我想修改几个语句:

#define width 320
#define height 50

我想做这样的事情:

if([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone){
#define width X
#define height Y }
else {
#define width A
#define height B
}

不过我好像做不到。有没有办法实现这样的目标?谢谢

最佳答案

你可以使用#if:

 #if TARGET_DEVICE_IPHONE // note this may be different, don't have acces to Xcode right now.
#define width X
#define height Y
#else
#define width A
#define height B
#endif

或者只做一个简单的内联函数:

static inline int width()
{
return [[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone ? X : A;
}

static inline int height()
{
return [[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone ? Y : B;
}

关于iphone - 可以将 if 语句放在#define 中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9389791/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com