项目工作背后的Uipickerview

时间:2014-01-07 11:15:41

标签: ios ios7 uipickerview

我的视图控制器中有pickerview。我通过添加到子视图然后更改子视图的框架来显示它。当我显示pickerview时,我后面有一个按钮。当我在禁用pickerview之后点击那些区域时,仍然会调用该按钮操作。如何正确设置pickerview

1 个答案:

答案 0 :(得分:1)

下面的PickerView子类将帮助你解决这个问题。

//
//  WPCustomPickerView.h
//  test
//
//  Created by VASANTH K on 08/01/14.
//  
//

#import <UIKit/UIKit.h>

@interface WPCustomPickerView : UIDatePicker

@end

实施档案

//
//  WPCustomPickerView.m
//  test
//
//  Created by VASANTH K on 08/01/14.
//  
//

#import "WPCustomPickerView.h"

@implementation WPCustomPickerView

- (id)initWithFrame:(CGRect)frame
{
    self = [super initWithFrame:frame];
    if (self) {
        // Initialization code
    }
    return self;
}


-(UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
{
    id hitview=[super hitTest:point withEvent:event];
     if(!hitview)
     {
     if(point.y<=self.frame.size.height&&point.y>=0)
     return self;
      }
return hitview;
}


@end

在此,我覆盖hitTest以对用户互动做出UIPickerView响应。当用户直接触摸主视图而不是选择器内容时,这就是苹果使主选择器视图对用户触摸透明的方式,返回nil。