0
こんにちは私はコレクションビュー内のUIsegmentコントロールのイベントをトリガーしようとしています。UIセグメント化されたコントロールがコレクションビュー内で機能しない
ここは私のコードです。
CollectionViewCell.h
@property (strong, nonatomic) IBOutlet UISegmentedControl *mySegmentedControl;
ViewController.m
{
NSInteger selectedSegment;
}
- (UIView *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{
cell.mySegmentedControl.tag = indexPath.row;
selectedSegment = cell.mySegmentedControl.selectedSegmentIndex;
[cell.mySegmentedControl addTarget:self action:@selector(segmentValueChanged:) forControlEvents:UIControlEventValueChanged];
}
- (void) segmentValueChanged: (UISwitch *) sender {
//NSInteger index = sender.tag;
if(selectedSegment == 0)
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"!Alert"
message:@"Do you think this property is not exists?"
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"Yes", nil];
[alert show];
}
else
{
//your code
}
}
上記のコードは私のためには機能しません。何か助けていただければ幸いです。 cellForItemAtIndexPath:: `
好きです
UISwitch
ではありません。 'segmentValueChanged:'の 'selectedSegmentIndex'をローカル変数に読み込む必要があります。 – clemens@Raj - 中にブレークポイントを設定しようとしましたか - (void)segmentValueChanged:(UISwitch *)送信者。セグメント化されたコントロールをタップしたときにのみ呼び出されます。 – kaushal