I have a couple of labels  and boxes in a view and i want to drag and drop labels on the boxes but the some of labels become hide under the boxes why this happen. I make a subview gameLayer and apply touches methods on this view. Here is code
for (int i = 0; i < length; i++)
{
    // Create UILabel for Column
    _lbl = [[UILabel alloc] initWithFrame:rect1];
    _lbl.tag = 100+i;
    _lbl.textAlignment = NSTextAlignmentCenter;
    _lbl.backgroundColor = [UIColor blueColor];
    _lbl.textColor = [UIColor whiteColor];
    _lbl.font = [UIFont fontWithName:@"Verdana-Bold" size:17.0];
    [self.gameLayer addSubview:_lbl];
     _lbl.text=[MainArrayFirst objectAtIndex:i];
    [_lbl sizeToFit];
    // Create UILabel Box for ColumnB
    box = [[UILabel alloc] initWithFrame:rect1];
    box.tag = 300+i;
    box.layer.borderColor = [UIColor blueColor].CGColor;
    box.layer.borderWidth = 2.0;
    [self.gameLayer addSubview:box];
  //touches
   -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
    {
      CGPoint pt = [[touches anyObject] locationInView:self.gameLayer];
      _xOffset = pt.x - self.gameLayer.center.x;
      _yOffset = pt.y - self.gameLayer.center.y;
       }
    - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
       UITouch *touch = [[event allTouches] anyObject];
       CGPoint currentPoint = [touch locationInView:self.gameLayer];
if (touch.view != self.gameLayer)
    [touch view].center = currentPoint;
     }
 
     
     
    