-4

私は現在、開発に不慣れで、問題に遭遇しました。.plist から文字列を読み取りたいのですが、ボタンを押すと、ランダムな文字列が選択されてラベルに表示されますか? サンプルの .plist と .h と .m でインスタンス化されたボタンがありますが、ランダムな文字列を選択して UILabels 値を選択した文字列に変更する方法がわかりません。どんな助けでも大歓迎です、そして前もって感謝します!.

ここに私の.plistがありますここに画像の説明を入力

そして、ここに私の.hがあります

#import <UIKit/UIKit.h>

@interface ViewController2 : UIViewController  {
IBOutlet UILabel *label1;
}

-(IBAction)randomButton;

そして、これが私の.mです

#import "ViewController2.h"

@interface ViewController2 ()

@end

@implementation ViewController2

//What do I put in my randomButton method to extract from .plist?
-(IBAction)randomButton {
}
4

1 に答える 1

4

まず最初に、plist ファイルを再配置して、すべての文字列が 1 つの配列に収まるようにする必要があります (文字列は "words" 配列にはありません)。その場合は、plist を NSArray に読み込みます。

NSString *path = [[NSBundle mainBundle] pathForResource:
     @"my" ofType:@"plist"]; 

NSDictionary *plistDict = [[NSDictionary alloc] initWithContentsOfFile:path];
NSMutableArray *plistArray = plistDict[@"words"];

次に、確率変数を生成します。

int randV = arc4random() % plistArray.count; // randV is from 0 to number of strings -1 in array

次に、ラベルのテキストを設定します。

label1.text = plistArray[randV];

また、そのような質問をする前に、いくつかの本を読むか、いくつかのチュートリアルを行うことを強くお勧めします.

于 2013-05-18T22:55:45.120 に答える