【问题标题】:how to control an outlet from another uiviewcontroller如何控制另一个 uiviewcontroller 的插座
【发布时间】:2012-07-23 17:46:02
【问题描述】:

连续 3 天试图解决这个问题,但仍然没有。 所以我想使用从矩形按钮(按下按钮)出现的弹出视图内的滑块来控制 uiview 的 alpha 所以在这里我已经做了,

主视图 .h 文件:

@class popView;
@interface brightscreenViewController : UIViewController <UIPopoverControllerDelegate>
{    
    IBOutlet UIView *darkView;
    IBOutlet UIButton *brightbtn;
    UIPopoverController *popvover;
    popView *pop;   
}

@property(nonatomic, retain) UIPopoverController *popover;
@property (nonatomic, retain) UIView *darkView;
@property (nonatomic, retain) popView *pop;

- (IBAction)showPop:(id)sender; 

主视图 .m 文件:

#import "brightscreenViewController.h"
#import "popView.h"

@class popView;
@interface brightscreenViewController ()

@end

@implementation brightscreenViewController
@synthesize popover;
@synthesize darkView;
@synthesize pop;

-(IBAction)showPop:(id)sender
{    
    popView *brightpop = [[popView alloc] init];
    popover = [[UIPopoverController alloc] initWithContentViewController:brightpop];
    [popover setDelegate:self];
    [popover presentPopoverFromRect:[brightbtn bounds] inView:brightbtn permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];
    [popover setPopoverContentSize:CGSizeMake(229, 57)];
}

在包含 uipopview 和滑块的第二个视图 .h 上:

@class brightscreenViewController;

@interface popView : UIViewController
{

    brightscreenViewController *brightscreen;
    IBOutlet UISlider *slider;   
}

@property (nonatomic, retain)UISlider *slider;
@property (nonatomic, retain) brightscreenViewController *brightscreen;

-(IBAction)setBrightness:(id)sender;

secondview .m 文件:

#import "popView.h"
#import "brightscreenViewController.h"


@interface popView ()

@end

@implementation popView
@synthesize slider;
@synthesize brightscreen;

-(IBAction)setBrightness:(id)sender
{   
    brightscreen.darkView.alpha = slider.value;
}

弹出框效果很好,但滑块不行。它根本没有反应。 我已经尝试使用相同的代码将滑块直接放在主视图上,它工作得很好,但是当我把它和 uipopover 放在一起时不起作用 我真的希望有人可以帮助我。

【问题讨论】:

    标签: uiviewcontroller controls iboutlet popviewcontroller


    【解决方案1】:

    怎么样:

    popView *brightpop = [[popView alloc] init];
    
    // New line
    brightpop.brightscreen = self;
    
    popover = [[UIPopoverController alloc] initWithContentViewController:brightpop];
    

    【讨论】:

    • 嗯,你能帮我做一件事吗?一切正常,但现在我放在 darkView 后面的文本视图变得不可滚动。我已经尝试将它放在黑暗视图的前面,但文字变得明亮。实际上我想设置屏幕的亮度,但由于苹果不向公众提供 API,所以我使用这个技巧来设置亮度。所以我需要设置视图的 alpha,但仍然设法滚动 textview .对此有什么建议吗?提前致谢。
    • 我没试过。您可能想开始一个新问题,以便知道答案的人能够找到它。
    猜你喜欢
    • 1970-01-01
    • 2014-02-09
    • 2012-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-30
    • 2014-12-07
    • 1970-01-01
    相关资源
    最近更新 更多