0

25 個の UIControls と 10 個の UIImageView があります。次のようになります。

ここに画像の説明を入力

現在、画像は UIImageViews で、グリッドは UIControls です。私が望むのは、ユーザーが画像をタップしてから任意のグリッド (もちろん空白のグリッド) をタップすると、UIImageView が現在のスーパービューから削除され、タップされた空白のグリッドのサブビューとして追加されることです。たとえば、ユーザーが最初に A1 グリッドをタップしてから B2 グリッドをタップすると、次の 2 つのアクションが発生します。

  1. A1 グリッドの UIImageView が削除され、
  2. B2グリッドにUIImageViewを追加

つまり、ユーザーが画像の A1 グリッドをタップしてから B2 グリッドをタップすると、出力ウィンドウは次のようになります。

ここに画像の説明を入力

編集


そのため、一度に 2 つのUIControl を追跡する必要があり
ます。
次に、最初の UIControl から UIImageView を削除し、2 番目の UIControl に追加します。UIControls に次のようなタグを付けてみました。

//....    
A1.tag = 1;
//...
-(void)a1ViewTapped:(id)sender
{
    int i = A1.tag;
    [self switch:i];
}
//...
-(void)switch:(int)_tag
{
    //....
    UIView *view = (UIView*)[self.view viewWithTag:_tag];

    [view removeFromSuperview];
    //...
}

これにより、1 つの UIControl を追跡できますが、そのうちの 2 つを追跡する必要があります。どうすればこれを達成できますか、誰か助けてもらえますか?

4

1 に答える 1