0

3 つの列があるポーカー ピッカービューを作成しようとしています。各列にはカードの標準リストがあり、各カードは行を表しています。左端の列で「ハートのエース」を選択すると、次の列は「ハートのエース」を除く標準リストになります。2 列目で「クラブの 3」を選択すると、3 列目には「ハートのエース」と「クラブの 3」を除く標準リストが表示されます。

誰かが私にそれを行う方法を教えてもらえますか?

私の現在のコードは1列のみで、3列すべてが1列に表示されるため、投稿するのは便利ではありません。

私はNSArrayデフォルトのリストに使用しており、UIActionSheet.

self.myPickerView = [[UIPickerView alloc] initWithFrame:CGRectMake(0, 43 , 320, 480)];
self.myPickerView.delegate = self;
self.myPickerView.dataSource = self;
[self.myPickerView setShowsSelectionIndicator:YES];

// Create done button in UIPickerView
self.myPickerViewToolBar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 320, 56)];
//  self.myPickerViewToolBar.barStyle = UIBarStyleBlackOpaque;
[self.myPickerViewToolBar sizeToFit];

NSMutableArray *barItems = [[NSMutableArray alloc] init];
UIBarButtonItem *flexSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
[barItems addObject:flexSpace];

UIBarButtonItem *doneBtn = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(pickerDoneClicked)];
[barItems addObject:doneBtn];

[self.myPickerViewToolBar setItems:barItems animated:YES];
self.sheet = [[UIActionSheet alloc] initWithTitle:nil
                                         delegate:self
                                cancelButtonTitle:@"Done"
                           destructiveButtonTitle:nil
                                otherButtonTitles:nil];
}
4

2 に答える 2

0

ピッカーを 3 列でセットアップする必要があります。各列に使用する 3 つの個別の配列を作成する必要があります。

次に、行の選択を処理するデリゲート メソッドを実装する必要があります。選択した行が 1 番目のコンポーネント用である場合は、2 番目と 3 番目の配列を更新して、選択したもの以外のすべてのカードを含める必要があります。次に、ピッカーに 2 番目と 3 番目のコンポーネントをリロードするように指示します。

2 番目のコンポーネントの選択された行を処理する場合、3 番目のコンポーネントの配列を更新して、他の 2 つの選択されたカード以外のすべてのカードを含める必要があります。次に、3 番目のコンポーネントをリロードします。

于 2013-04-22T03:13:24.477 に答える