2012-04-24 4 views
5

मैं readwriteint गुणों के साथ एक वर्ग है:'केवल पढ़ने के लिए' वापसी परिणाम के लिए नियत की अनुमति नहीं दी है, लेकिन संपत्ति घोषित किया जाता है "ReadWrite"

@interface PlayScene : UIView 

@property (readwrite, assign) int Figure1; 
@property (readwrite, assign) int Figure2; 
@property (readwrite, assign) int Figure3; 

लेकिन जब मैं संपत्तियों के मूल्य को बदलने की कोशिश, एक त्रुटि होती है:

[self Figure1] = 1; 

'केवल पढ़ने के लिए' एक ऑब्जेक्टिव-सी संदेश का वापसी परिणाम

अनुमति नहीं करने के लिए बताए

समस्या क्या है?

+1

कृपया उस कोड को शामिल करें जिसका उपयोग आप "अपने मूल्य को बदलने का प्रयास करें" के लिए कर रहे हैं। –

+0

विधियों की तरह, सभी @property घोषणाएं हमेशा लोअरकेस अक्षर से शुरू होनी चाहिए। – bbum

+0

ठीक है, मैं इसे – Alexander

उत्तर

14

गलत वाक्यविन्यास!

कॉल

[self setFigure1:1]; 

या

self.Figure1 = 1; 

(यह एक ही है, धन्यवाद @synthesize करने के लिए [मैं तुम्हें एक synthesize जोड़ने था आशा] है!)

और: Btw: आप हो सकता है अपने आवृत्ति चर के लिए लोअरकेस-कैमलकेस का उपयोग करें। यह वैश्विक-आम तरह का है। :)

+0

धन्यवाद, हाँ मैंने @ सिंथेसाइज़ का उपयोग किया – Alexander

संबंधित मुद्दे