-1

私は iPhone 開発の初心者で、Glass Buttons を実装しようとしているときに奇妙な問題が発生しています (ここにあります)。MOGlassButtons.m ファイル内で「unexpected @ in program error」が発生するため、ビルドが失敗します。この問題を解決する方法については何も見つかりませんでした。どんな助けでも大歓迎です。

MOGlassButton.m

self.gradientLayer1.colors = @[(id)[MO_RGBACOLOR(255, 255, 255, 0.45) CGColor], (id)[MO_RGBACOLOR(255, 235, 255, 0.1) CGColor]]; //<--"unexpected @ in program error" 

self.gradientLayer2.colors = @[(id)[MO_RGBACOLOR(205, 205, 205, 0) CGColor], (id)[MO_RGBACOLOR(235, 215, 215, 0.2) CGColor]]; //<--"unexpected @ in program error" 

編集

#import "MOGlassButton.h"

// Courtesy of https://github.com/facebook/three20
#ifndef MO_RGBCOLOR
#define MO_RGBCOLOR(r,g,b) [UIColor colorWithRed:r/255.0 green:g/255.0 blue:b/255.0 alpha:1]
#endif
#ifndef MO_RGBCOLOR1
#define MO_RGBCOLOR1(c) [UIColor colorWithRed:c/255.0 green:c/255.0 blue:c/255.0 alpha:1]
#endif
#ifndef MO_RGBACOLOR
#define MO_RGBACOLOR(r,g,b,a) [UIColor colorWithRed:r/255.0 green:g/255.0 blue:b/255.0 alpha:a]
#endif
4

1 に答える 1

1

問題はおそらく、実行している Xcode のバージョンが古いことです。@[…]あなたのコードは、Xcode 4.4 以降でサポートされているため、以前のリリースでは無効なObjective-C リテラル (部分) を使用しています。( Xcode 4.4 リリースノートに記載されている「Objective-C Literals」の詳細は何ですか? を参照してください)

アップグレードすると問題が解決するはずです。

編集

または、更新を強くお勧めしますが、次を使用できます。

[NSArray arrayWithObjects: (id)[MO_RGBACOLOR(255, 255, 255, 0.45) CGColor], (id)[MO_RGBACOLOR(255, 235, 255, 0.1) CGColor], nil];
于 2013-03-22T00:50:51.540 に答える