3

現在クラスで定義しているUnicode文字(音楽的なフラットでシャープな記号)がいくつかあります。

#import <Foundation/Foundation.h>

#define kSongsSharpSymbol [NSString stringWithFormat:@"\U0000266F"]
#define kSongsFlatSymbol [NSString stringWithFormat:@"\U0000266D"]

@interface Song : NSObject {

 //...

}

アプリケーションが大きくなるにつれて、これらのタイプの定数は、クラスを含めることなく、アプリケーションファイルで使用できる場所に配置したほうがよいと思います。

質問

  1. Unicode文字を正しく定義していますか?それは機能しますが、それが正しいという意味ではありません
  2. 理想的には、これらのタイプの定数をどこに配置する必要がありますか?

乾杯とありがとう!

4

1 に答える 1

3

このようなカスタムクラスを作成し、それをプリコンパイル済みヘッダーファイルに追加することで、これを解決しました。

//Constants.h
#import <Foundation/Foundation.h>

FOUNDATION_EXPORT NSString *const kSongsSharpSymbol;
FOUNDATION_EXPORT NSString *const kSongsFlatSymbol;


//Constants.m
#import "Constants.h"

NSString *const kSongsSharpSymbol = @"\U0000266F";
NSString *const kSongsFlatSymbol = @"\U0000266D";

 //.pch file
#import <Availability.h>

#ifndef __IPHONE_4_0
#warning "This project uses features only available in iOS SDK 4.0 and later."
#endif

 #ifdef __OBJC__
  #import <UIKit/UIKit.h>
  #import <Foundation/Foundation.h>
  #import "Constants.h"

#endif
于 2012-06-12T21:42:47.457 に答える