Remove border for UIPopoverController

后端 未结 2 1486
盖世英雄少女心
盖世英雄少女心 2020-12-20 06:33

I have a requirement where in I have to display a custom border for UIPopoverController\'s popover view instead of the default \"Black theme\" border. Is it possible?

<
2条回答
  •  长情又很酷
    2020-12-20 06:57

    add popview as subview, code is:

    //!you must define the dimBackgroundView and set view in head file firstly, 
    
    //action for a button,to add set view as a subview
     - (IBAction)openSetting:(id)sender {
    
        if(!dimBackgroundView)
        {
           dimBackgroundView = [[UIView alloc] initWithFrame:self.view.bounds];
        }
        dimBackgroundView.backgroundColor = [[UIColor clearColor] colorWithAlphaComponent:0.0];
    
        [self.view addSubview:dimBackgroundView];
    
        SettingViewController *set = [[SettingViewController alloc]initWithNibName:nil bundle:nil];
        [set.view setFrame:CGRectMake(120, 50, 400, 600)];
        self.setView = set;
    
        //add shadow
        set.view.layer.shadowOffset = CGSizeMake(3, 3);
        set.view.layer.shadowColor = [UIColor colorWithRed:70.0/255.0 green:70.0/255.0 blue:80.0/255.0 alpha:1.0].CGColor;
        set.view.layer.shadowOpacity = 0.8;
    
        [self.view addSubview:set.view];
    }
    //check touch position, if touch position is outside of setview, remove it from superview
    - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *) event{
        UITouch *touch = [[event allTouches] anyObject];
        if ([self.setView.view superview] && self.dimBackgroundView == touch.view) {
            [self.dimBackgroundView removeFromSuperview];
            [self.setView.view removeFromSuperview];
        }
    }
    

提交回复
热议问题