2012-07-20 157 views
0

我有叫CardView一個UIView子類,並創建了像這樣的實例:我可以在UIView子類上設置標籤屬性嗎?

CardView *newCard = [[CardView alloc] initWithFrame:CGRectMake(x,y,w,h)]; 

然後我試圖設置視圖的標籤是這樣的:

newCard.tag = 1; 

但是,沒有按似乎並沒有爲這個觀點設置標籤。如果我設置一個斷點在附近,並在調試器做

po newCard.tag 

,它說

error: property 'tag' not found on object of type 'CardView *' 

我不應該得到一個標籤屬性作爲UIView子類的一部分?

+0

你可以發佈你的.h的CardView嗎?是的,你應該獲得標籤屬性作爲你的子類的一部分 – Daniel 2012-07-20 21:46:23

+0

只是一個長鏡頭,但你有沒有嘗試過替代'[newCard setTag:1];' – Panagiotis 2012-07-20 21:46:46

回答

3

調試器控制檯不理解Objective C屬性語法。相反,在源文件中做到這一點:

NSLog(@"%d", newCard.tag); 

,你會看到它在控制檯中。

雖然調試器會理解數據類型,但它理解方法。此調試器命令將工作:

p (int)[newCard tag] 

這與GDB獲得的目標一樣。

+0

Ooohhh,完全沒有把戲(鑄造爲int)。它確實正確地存儲了標籤。謝謝! – Triz 2012-07-20 21:49:25

相關問題