0

私は電話プログラミングに不慣れです。その中にカスタムボタンを作成し、すべてのカスタムボタンの画像を添付しています。これで、カスタムボタンの画像がサムネイルに表示されます。サムネイル画像またはカスタムボタンを選択した場合に必要なものです。ここでは、そのサムネイル画像を選択および選択解除し、選択した画像のタグ値を配列に保存します。これを行う方法1つのコードの下にあります。以下のコードを使用して、カスタムボタンを作成し、画像をカスタムボタンに添付しています。

blaukypath =[[NSMutableArray alloc]init];
   for (NSString* path in array)
   {
 [blaukypath addObject:[UIImage imageWithContentsOfFile:path]];
 NSLog(@"%@",path);
   }
  myScrollView = [[UIScrollView alloc]initWithFrame:CGRectMake(0.0, 0.0, 320.0, 840.0)];
  myScrollView.delegate = self;
  myScrollView.contentSize = CGSizeMake(320.0, 840.0);
  myScrollView.backgroundColor = [UIColor whiteColor];
  [self.view addSubview:myScrollView];

  float horizontal = 8.0;
  float vertical = 8.0;
  for(int i=0; i<[blaukypath count]; i++)
  {
   if((i%4) == 0 && i!=0)
   {
   horizontal = 8.0;
   vertical = vertical + 70.0 + 8.0;
   }

                    buttonImage = [UIButton buttonWithType:UIButtonTypeCustom];
                    [buttonImage setFrame:CGRectMake(horizontal, vertical, 70.0, 70.0)];
                    [buttonImage setTag:i];

                    [buttonImage setImage:[blaukypath objectAtIndex:i] forState:UIControlStateNormal];
                    [buttonImage addTarget:self action:@selector(buttonImagePressed:) forControlEvents:UIControlEventTouchUpInside];
                    [myScrollView addSubview:buttonImage];

                    horizontal = horizontal + 70.0 + 8.0;
                }

                [myScrollView setContentSize:CGSizeMake(320.0, vertical + 78.0)];


                [self.myScrollView addSubview:buttonImage];

ここで、サムネイル画像を選択した場合は、サムネイル画像と選択したサムネイル画像を選択して選択を解除し、配列に保存します。

-(void)buttonImagePressed:(id)sender
{
UIButton *btn = (UIButton*)sender;

    if (btn.tag==0)
    {
        [btn setImage:[UIImage imageNamed:@"Default.png"] forState:UIControlStateNormal];
        btn.tag=1;
    }
    else{
        [btn setImage:nil forState:UIControlStateNormal];
        btn.tag=0;
    }

ある団体は、上記のコードを使用することで、私は機能しますが、機能しません。正確に私が望むものを選択および選択解除し、選択した画像を配列に保存したいと言いました。ありがとうアスラム

4

1 に答える 1

3

ボタンの画像を設定しますUIControlState

@property(nonatomic,retain)NSMutableArray *tapCollection;

[btn setImage:[UIImage imageNamed:@"buttonBackGround.png"] forState:UIControlStateNormal];
[btn setImage:[UIImage imageNamed:@"Button_Selected.jpg"] forState:UIControlStateSelected];

-(void)viewDidLoad{

   self.tapCollection = [[NSMutableArray alloc] init];
}

-(void)buttonImagePressed:(id)sender
{
   UIButton *selectedButton = (UIButton *)sender;

  //If checked, uncheck and visa versa
  [selectedButton setSelected:![selectedButton isSelected]];

  if([selectedButton isSelected])
  {
      [self.tapCollection addObject:[NSNumber numberWithInt:btn.tag]];
  }
  else
  {
     //remove btn.tag from self.tapCollection
  }
}
于 2013-03-18T18:05:23.717 に答える