iOS开发中Subview的事件响应以及获取subview的方法

前端技术 2023/09/04 IOS

Subview的事件响应
在view的层级里面,默认情况下subview是可以显示到其父view的frame区域以外的,通过设置clipToBounds属性为YES,可以限制subview的显示区域。但是touch在各个UIView中传递的时候,区域时限制在view的frame内,此处包含两个信息:1、在当前view的frame以外所做的操作是不会传递到该view中的,这一点很容易理解。2、如果touch事件是发生在当前view的frame以外,该view所有的subview将也不会再收到该消息。这一点通常容易被我们忽略,很多奇怪的问题就是这个引起的。
 
  下面请看一个小例子,定制view的代码如下:
 

复制代码 代码如下:

SvTestClipSubviewEvent.h


//

//  SvTestClipSubviewEvent.h

//  SvUIViewSample

//

//  Created by maple on 3/19/12.

//  Copyright (c) 2012 smileEvday. All rights reserved.

//

//  默认的情况下,subView可以超出父view的frame,即可以显示到父View的外边

//  但是消息的接受返回却是由于父View的大小限制,即出了父View的subView将不能收到消息

//  在程序中一定要注意当前程序view的最底层是充满整个window的可用区域的,

//  否则将会导致某些区域明明有按钮但是却点不中的问题

#import <UIKit/UIKit.h>

@interface SvTestClipSubviewEvent : UIView

@end

本文地址:https://www.stayed.cn/item/10827

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。