使用带有UItextFiled的UIPopoverController

时间:2011-08-18 22:40:29

标签: objective-c ipad

我点击UITexField时会显示此代码,我会显示UIPopover并获得选中的值,但我的问题是我如何使用其他textField {{1}在其他xib中,我可以有很多UIPopover来接收所选的值吗?` -

UIViewController

////////////////////// 此代码用于重现detailItem

(IBAction) btnShowLan:(id) sender {

    choix=1;
    if (self.popoverControllerl == nil) {
        MyPopOverView *movies = [[MyPopOverView alloc] initWithNibName:@"MyPopOverView" bundle:[NSBundle mainBundle]]; 
        movies.listOfMovies = [[NSMutableArray alloc] init];

        movies.listOfMovies=mutable3;
        movies.choix=1;

        UIPopoverController *popover =[[UIPopoverController alloc] initWithContentViewController:movies]; 

        popover.delegate = self;
        [movies release];

        self.popoverControllerl = popover;
        [popover release];
    }

    CGRect popoverRect = [self.view convertRect:[langue frame] 
                                       fromView:[langue superview]];

    popoverRect.size.width = 20; 
    popoverRect.size.height =20;
    [self.popoverControllerl presentPopoverFromRect:popoverRect 
                                            inView:self.view 
                          permittedArrowDirections:UIPopoverArrowDirectionAny 
                                          animated:YES];
}

`

1 个答案:

答案 0 :(得分:0)

我认为你问的基本上是“如果我在popover中有一个带有值的文本字段并且值发生变化,那么如何告诉我的应用程序的其他部分值已经改变。”

虽然可能有很多方法可以做,但这里有几种可能性。

1。)创建一个单例类来存储所有共享值。当弹出窗口更改值时,更改单例中的该值并让所有其他观察者使用该值询问单例的值。

2.。)使用NSNotification并将chang值存储在通知“userinfo”中,并将其他类订阅到通知中......如果此更改,则弹出窗口调度事件已更改。

3.)使用核心数据来存储和更改共享数据中的值