私はXMLで遊んでいますが、いくつかのチュートリアルを行っていますが、私の必要性は具体的です。あなたがCCLabelを持っていて、XMLファイルからその中にデータをロードしたいとします。シーンxでは、XMLの関連部分からデータをロードします。たとえば、シーンに基づいてページ番号を入力するとします。Cocos2D MacのテキストフィールドにXMLデータを読み込み
誰にも例がありますか?
よろしくお願いいたします。
私はXMLで遊んでいますが、いくつかのチュートリアルを行っていますが、私の必要性は具体的です。あなたがCCLabelを持っていて、XMLファイルからその中にデータをロードしたいとします。シーンxでは、XMLの関連部分からデータをロードします。たとえば、シーンに基づいてページ番号を入力するとします。Cocos2D MacのテキストフィールドにXMLデータを読み込み
誰にも例がありますか?
よろしくお願いいたします。
XMLを読むには、NSXMLParserガイドをご覧ください。 XMLの構造を管理するのはあなた次第ですが、本質的に、パーサーからの読み取りイベントを受け取るときには、読み込んだテキストを使用するのは簡単なことです。あなたのXMLファイルを想定し
は何かのようになります。
<scene id=1>
<label id=1 text="Label Text" />
</scene>
<scene id=2>
<label id=2 text="Scene 2 Text" />
</scene>
あなたは選択肢のカップルを持っている - あなたは、ファイルたびシーンの負荷を解析することができますいずれか、IDの内部以外のすべてを無視= X(ここで、 xはidに関するシーン参照のようなものです)、またはアプリケーションの開始時にxml全体をロードして、何らかの構造体を格納することができます。私は最初のオプションを好むだろう。 (私がリンクマニュアルに記載されているまだ良いです)基本的な例として
、機能を読んで、あなたの要素は、この行う可能性があります:
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict {
if ([elementName isEqualToString:@"label"]) {
//attributeDict contains the attributes of the element,
//in your case, "text" is one of the keys, and "Label Text" would be the value
//this would pass the specific label text from the xml file to a function in your scene
[scene someFunctionForPopulatingLabel:[attributeDict objectForKey:@"text"]];
}
}
を