Как получить веб-представление для переключения сайтов при нажатии на другую сторону UISegmentedControl (iOS Objective-C) - PullRequest
0 голосов
/ 03 апреля 2012

Я думаю, что все учебники, которые я нашел, были сделаны еще до того, как вы могли использовать xib с неубедительным контролем.По сути, я просто пытаюсь загрузить веб-сайты, которые будут переключаться при переключении между UISegmentedControls.

К вашему сведению, так я загружаю сайты:

    NSURL *USurl = [NSURL URLWithString:USurlAddress];

//URL Requst Object
NSURLRequest *USrequestObj = [NSURLRequest requestWithURL:USurl];

//Load the request in the UIWebView.
[webview loadRequest:USrequestObj];

Ответы [ 2 ]

1 голос
/ 03 апреля 2012

Если вы используете XIB, вам необходимо привязать событие valueChanged, например, к функции в вашем владельце файла.

Эта функция будет вызываться при изменении сегментированного управляющего значения, например:

- (IBAction)segValueChanged:(UISegmentedControl *)seg {
  switch (seg.selectedSegmentIndex) {
     ....
  }
}

Если вы делаете это по коду, вы можете добавить прослушиватель событий в свой сегментированный элемент управления с помощью:

[segmentedControl addTarget:self
                     action:@selector(action:)
           forControlEvents:UIControlEventValueChanged];

P.S .: Имена переменных, как правило, начинаются со строчной буквы ...

0 голосов
/ 03 апреля 2012

Создайте метод (давайте назовем его -(void)switchBetweenTheViews:(id)sender), а затем добавьте следующую строку в код, где вы создаете UISegmentedControl:

[yourSegmentedControl addTarget:self action:@selector(switchBetweenTheViews:) forControlEvents:UIControlEventValueChanged];

Затем каждый раз, когда пользователь нажимает на другую сторонуиз этого UISegmentedControl этот метод будет вызван.Пример этого метода:

-(void)switchBetweenTheViews:(id)sender {
  UISegmentedControl *sc = (UISegmentedControl*)sender;
  NSURL *USurl;
  if (sc.selectedSegmentIndex == 0) {
    USurl = [NSURL URLWithString:USurlAddress];
  } else {
    USurl = [NSURL URLWithString:USurlAddress2];
  }
  NSURLRequest *USrequestObj = [NSURLRequest requestWithURL:USurl];
  [webview loadRequest:USrequestObj];
}

Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...