0

ジェスチャ認識機能を使用して複数の UIImageView を移動できる ViewController があります。正常に動作していますが、選択された UIImageView は他のものの上にありません。

UIImageViews は作成の順序を維持するため、最後のビューは常に最初のビューよりも下になります。

何かアドバイス?

4

3 に答える 3

1

UIImageView新しい-を選択したら、次のUIViewControllerように呼び出します。

[self.view bringSubviewToFront:imageView];

それは役立つはずです。

于 2013-04-18T13:52:21.123 に答える
0

何をする必要があるか プログラムでそれらを並べ替えます。次の方法でこれを行うことができます

  -(void)bringTheDesiredImageViewInFront:(int))_tagForImageView
   {
       for(UIImageView *_subView in self.view.subviews)
        {
            if([_subView isKindOfClass:[UIImageView class]])
            {
                 UIImageView *temp=(UIImageView *)_subView;

                 if([temp tag]==_tagForImageView)
                      [self.view bringSubviewToFront:temp];
            }
            else
                continue;


        }
   }

任意の UIImageView で任意のgestureRecognizer のセレクターが呼び出されるたびに、このメソッドを呼び出します。また、異なる UIImageView に対して異なるタグ値を設定します。上記のメソッドは、次のように呼び出すことができます。

    UIImageView *imageView=[[UIImageView alloc] init];
    [imageView setTag:1];

    [self bringTheDesiredImageViewInFront:imageView.tag]
于 2013-04-18T14:01:38.790 に答える