Iphone IOS:设置';调光器&x27;视图';s alpha大于0.0将禁用触摸事件(?)

Iphone IOS:设置';调光器&x27;视图';s alpha大于0.0将禁用触摸事件(?),iphone,uiview,alpha,touch-event,Iphone,Uiview,Alpha,Touch Event,我有一个应用程序,我试图让用户通过手势调暗显示。我有一个UIView,其中包含许多其他视图和按钮,在上面我放置了一个UIView,我将其背景色设置为黑色。为了不进行调光,我将调光器视图的alpha设置为零(透明)。为了实现变暗,我以小步增加alpha值。这似乎很有效,除了。。。(您知道会发生这种情况)每当alpha值大于零时,触摸事件都会被阻止——不会正常接收 创建调光器视图: UIPanGestureRecognizer * panner = nil; panner = [[UIPanGest

我有一个应用程序,我试图让用户通过手势调暗显示。我有一个UIView,其中包含许多其他视图和按钮,在上面我放置了一个UIView,我将其背景色设置为黑色。为了不进行调光,我将调光器视图的alpha设置为零(透明)。为了实现变暗,我以小步增加alpha值。这似乎很有效,除了。。。(您知道会发生这种情况)每当alpha值大于零时,触摸事件都会被阻止——不会正常接收

创建调光器视图:

UIPanGestureRecognizer * panner = nil;
panner = [[UIPanGestureRecognizer alloc] initWithTarget: self action:@selector(handlePanGesture:)];
[self.view addGestureRecognizer:panner ];
[panner setDelegate:self];
[panner release];


CGRect frame = CGRectMake(0, 0, 320, 460);
self.dimmer = [[UIView alloc] initWithFrame:frame];
[self.dimmer setBackgroundColor:[UIColor blackColor]];
[self.view addSubview:dimmer];
处理平移手势:

-(IBAction) handlePanGesture:(UIPanGestureRecognizer *) sender
{
    static CGPoint lastPosition = {0};
    CGPoint nowPosition;
    float alpha = 0.0;
    float new_alpha = 0.0;
    nowPosition = [sender translationInView: [self view]];
    alpha = [dimmer alpha];

    if (nowPosition.y > lastPosition.y)
    {   NSLog(@"Down");
        new_alpha = min(alpha + 0.02,1.0);
        [dimmer setAlpha:(new_alpha)];
    }
    else if (nowPosition.y < lastPosition.y)
    { 
        NSLog(@"Up"); 
        new_alpha = max(alpha - 0.02,0);
        [dimmer setAlpha:(new_alpha)];
    }
    else
    {   NSLog(@" neither "); }
    NSLog(@"alpha = %f new_alpha = %f", alpha, new_alpha);
    lastPosition = nowPosition;
}
-(iAction)HandlePangestrue:(UIPangestureRecognitor*)发送方
{
静态CGPoint lastPosition={0};
CG点位置;
浮动α=0.0;
新浮点数α=0.0;
nowPosition=[sender TranslationView:[self view]];
α=[二聚体α];
if(nowPosition.y>lastPosition.y)
{NSLog(@“向下”);
新α=min(α+0.02,1.0);
[调光器设置α:(新α)];
}
else if(nowPosition.y
你知道为什么这些活动被阻止了吗?有更好的方法吗?
我读过好几篇帖子,也在谷歌上搜索过不少,但没有看到任何相关的东西

感谢您的帮助


:bp:

尝试在调光器视图中将userInteractionEnabled设置为否。这应该告诉视图不要与触摸事件交互,这应该允许它们继续向下到调光器下方的视图。

就是这样!谢谢,谢谢!!