我有兩個imageViews imageView1和imageView2。我已經給了gestureRecognizer來移動這兩個圖像。現在的問題是,當我第一次移動imageView靠近第二個圖像時,只顯示第二個圖像視圖。但是當我把第一個imageView放在另一個圖像上時,第一個imageView應該顯示在第二個imageView上,這是不會發生的。可以請任何人告訴我第一個imageView如何在另一個imageView的頂部獲取視圖。區分兩個ImageViews
1
A
回答
1
爲什麼不使用類似的東西來拖動你的UIImageView?
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
self.view.backgroundColor = [UIColor yellowColor];
test1 = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
test1.backgroundColor = [UIColor whiteColor];
test1.userInteractionEnabled = YES;
test1.clipToBounds = YES;
[self.view addSubview:test1];
test2 = [[UIImageView alloc] initWithFrame:CGRectMake(400, 400, 100, 100)];
test2.backgroundColor = [UIColor whiteColor];
test2.userInteractionEnabled = YES;
test2.clipToBounds = YES;
[self.view addSubview:test2];
}
CGPoint startLocation;
float diffX;
float diffY;
-(void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *touch = [[event allTouches] anyObject];
if([touch view] == test1)
{
startLocation = [touch locationInView:self.view];
[self.view bringSubviewToFront:test1];
}
if([touch view] == test2)
{
startLocation = [touch locationInView:self.view];
[self.view bringSubviewToFront:test2];
}
}
- (void) touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{
UITouch *touch = [[event allTouches] anyObject];
if([touch view] == test1)
{
CGPoint location = [touch locationInView:self.view];
diffX = location.x - startLocation.x;
diffY = location.y - startLocation.y;
test1.frame = CGRectMake(test1.frame.origin.x + diffX, test1.frame.origin.y + diffY, test1.frame.size.width, test1.frame.size.height);
startLocation = test1.frame.origin;
}
if([touch view] == test2)
{
CGPoint location = [touch locationInView:self.view];
diffX = location.x - startLocation.x;
diffY = location.y - startLocation.y;
test2.frame = CGRectMake(test2.frame.origin.x + diffX, test2.frame.origin.y + diffY, test2.frame.size.width, test2.frame.size.height);
startLocation = test2.frame.origin;
}
}
// --- 編輯 --- // 補充:在viewDidLoad中cliptobounds
2
您可以使用UIView
方法bringSubviewToFront:
,並通過UIImageView
您想顯示在頂部。
相關問題
- 1. 居中兩個並排ImageViews
- 2. 問題有兩個imageViews
- 3. Android - 兩個ImageViews並排
- 4. 如何比較兩個ImageViews?
- 5. 區分兩個類
- 6. 加入兩個或多個ImageViews
- 7. 淡入淡出兩個imageviews重疊
- 8. Android,兩個ImageViews透明度同步
- 9. Android中兩個重疊的ImageViews
- 10. 以編程方式放置兩個ImageViews
- 11. 劃分兩個SUM的兩個區間
- 12. 區分兩個Ajax請求
- 13. 如何區分兩個表
- 14. 如何區分兩個Time.now.utc.iso8601?
- 15. 如何區分兩個_AppointmentItem?
- 16. 使用兩個分區還是比沒有分區更好?
- 17. 按其分區號合併兩個數據庫表分區
- 18. saveAsParquetFile失敗兩個分區,並沒有分區
- 19. 一個tapReRecognizer幾個imageViews
- 20. 區分兩個數組索引?
- 21. 如何在兩個StartActivityFor結果區分()
- 22. 如何區分兩個WhatsApp消息?
- 23. 如何區分這兩個過程?
- 24. 如何區分兩個相撞的圓?
- 25. 使用Swift區分兩個Xcode目標
- 26. 如何區分兩個Linux時間戳
- 27. C:兩個陣列的分區
- 28. 如何區分兩個點擊功能?
- 29. css溢出問題與兩個分區
- 30. Xpath區分同名的兩個屬性
據工作絕對沒問題,但是當涉及第二ImageView的附近是沒有限。 –
是否設置了clipToBounds(BOOL)屬性? –
是的,我已經把它設置爲是在觸動移動method.But仍然我有同樣的問題。 –