2012-07-23 3 views
0

пытался решить это в течение 3 дней подряд, но все равно ничего. поэтому я хочу, чтобы контролировать альфа в UIView с помощью ползунка внутри popview, которые появляются с помощью кнопки Rect (кнопка нажата) так вот, что я уже сделал,как управлять розеткой от другого uiviewcontroller

MainView .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; 

MainView файл .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)]; 
} 

и на второй вид .h, которые содержат uipopview и слайдер:

@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 . Я действительно надеюсь, что кто-то может мне помочь.

ответ

1

Как насчет:

popView *brightpop = [[popView alloc] init]; 

// New line 
brightpop.brightscreen = self; 

popover = [[UIPopoverController alloc] initWithContentViewController:brightpop]; 
+0

Хахаха, человек это MAGIC !!!! Большое спасибо вам, Филипп. – redribbon

+0

Хмм, ты можешь помочь мне с еще одной вещью? все работает отлично, но теперь мое текстовое представление, которое я ставлю за темный экран, становится нескромным. я уже пытаюсь поставить его перед темным видом, но текст становится ярким. на самом деле я хочу установить яркость экрана, но так как яблоко не предоставляет API для публики, поэтому я использую этот трюк для настройки яркости. Мне нужно установить альфа представления, но все же удастся прокрутить текстовое окно , любое предложение кому-нибудь? заранее спасибо. – redribbon

+0

Я этого не пробовал. Возможно, вы захотите начать новый вопрос, чтобы люди, которые знали ответ, могли его найти. –

Смежные вопросы