2011-11-15 23 views
8

Çok sık kullandığım bir kod parçam var ve bunun dışında bir makro oluşturmak istiyorum. Bununla nasıl yapılacağından tam olarak emin değilim. İşteiOS oluşturma makrosu

UIImage *titleImage = [UIImage imageNamed:@"myLogo.png"]; 
UIImageView *titleImageView = [[UIImageView alloc] initWithImage:titleImage]; 
self.navigationItem.titleView = titleImageView; 
[titleImageView release]; 

kullanmak istediğiniz kod ben sonradan örneği addImage için söyleyecek (...) böylece bir makro olarak bu bloğu tanımlamak istediğiniz var; Yardım ettiğin için teşekkür ederim. Önişlemci ile

cevap

18
#define MY_MACRO(img) \ 
    {\ 
     UIImage *titleImage = [UIImage imageNamed:img]; \ 
     UIImageView *titleImageView = [[UIImageView alloc] initWithImage:titleImage]; \ 
     self.navigationItem.titleView = titleImageView; \ 
     [titleImageView release];\ 
    } 

böyle kullanın: {} kullanımı değişken yinelenmesi ile ilgili sorunlar (engelleyecek bir kapsam bloğu oluşturur

MY_MACRO(@"myLogo.png") 

Eğer makro kullanmak aynı adı ile değişkenler varsa).

0

kullanım #define, bir işlevi yazmak veya sınıf için bir yöntemi yazın.

0

aşağıdaki makro

#define addImage(__imageName__) \ 
UIImage *titleImage = [UIImage imageNamed:__imageName__]; \ 
UIImageView *titleImageView = [[UIImageView alloc] initWithImage:titleImage]; \ 
self.navigationItem.titleView = titleImageView; \ 
[titleImageView release]; \ 
0

#define Image_Macro @ "myLogo.png" UIImage *titleImage = [UIImage imageNamed:Image_Macro]; UIImageView *titleImageView =[[UIImageView alloc] initWithImage:titleImage]; self.navigationItem.titleView = titleImageView;

deneyin
İlgili konular