2016-02-24 8 views
7
+ (UIColor*) getColorWithHexa(NSString*)hexString; 

enter image description here警告の理由 "ポインタにNULL許容タイプ指定子がありません"。

これは私のクラスのメソッドの定義です。それは警告を引き起こしています。どのような似たような警告が発生し、どのように解決することができますか?

私はUIColorオブジェクトを返していますが、その質問はコメントに記載されているブロックに関連しています。

だから、参考になります。

+2

微視的なスクリーンショットを投稿しないでください。郵便番号!コピー&ペーストはとても簡単です。 – vadian

+0

@vadian両方質問はまったく異なります。この質問は、理由、解決策、またはあなたのリンクに記載されているものとは何かに関するものです。ここではメソッドですが、それは完全に別のブロックです。例えば、 –

+0

。'+(UIColor * _Nullable)getColorWithHexa(NSString * _Nonnull)hexString;'ですが、あなたのクラスのインターフェイス全体を 'NS_ASSUME_NONNULL_BEGIN'と' NS_ASSUME_NONNULL_END'ディレクティブの間に入れることもできます。 – holex

答えて

13

NS_ASSUME_NONNULL_BEGIN/END:Objective-Cのヘッダファイル内のポインタを注釈

は、警告の カスケードにもたらし、全体のファイルの注釈を期待する コンパイラを引き起こします。ほとんどの注釈がNullでない場合、 新しいマクロは、既存の クラスに注釈を付けるプロセスを合理化するのに役立ちます。ヘッダー のセクションの先頭と末尾にNS_ASSUME_NONNULL_BEGINと... ENDをマークし、例外をマークするだけです。

だから、あなたは単純です。

NS_ASSUME_NONNULL_BEGIN 
+ (UIColor*) getColorWithHexaCode:(NSString*)hexString; 
NS_ASSUME_NONNULL_END 

この

"NSObjCRuntime.h"

NS_ASSUME_NONNULL_BEGIN _Pragmaを定義する( "打ち鳴らす開始assume_nonnull")で定義され

定義NS_ASSUME_NONNULL_END _Pragma( "打ち鳴らす端assume_nonnull")

ありがとうございました

ハッピーコーディング

7

ファイル内のどこかには、あなたが_Nonnull_Nullable_Null_unspecified__nullable__nonnullnullableまたはnonnullのいずれかを使用するときは、この警告を得ました。指定子がマクロによって追加された場合にも発生する可能性があります。警告固定するために

:あなたがNULL可能の出現をすべて削除することができます

  • を(推奨されません)
  • あなたはすべてのパラメータを仮定し、値を返さできNS_ASSUME_NONNULL_BEGINNS_ASSUME_NONNULL_ENDを使用して_Nonnull(推奨)されている
関連する問題