UIScrollView, нажатие кнопки не работает ... - PullRequest
0 голосов
/ 30 июля 2011

Я использую пример кода, PageControl из iOS Developer Library.

Что я хочу сделать, это

1) добавить кнопку в MyView.xib
2), еслинажата кнопка, перейдите на страницу 2

Итак, это то, что я сделал.

1) Создаю кнопку в MyView.xib
2) Создаю IBAction в «MyViewController.m» как

 - (IBAction)toPageTwo:(id)sender;

    {

        NSLog(@"button clicked...");
        PhoneContentController * callSview = [[PhoneContentController alloc] init];
        [callSview showPage:2];

    }

Затем, создал следующий метод в PhoneContentController.m для перехода на страницу два.

- (void)showPage:(int)page;

{

    [scrollView setContentOffset:CGPointMake(320*(page -1), 0) animated:YES];    
    NSLog(@"Method called..and the scrollview width is %f  ", scrollView.frame.size.width);
    //prints negative value or 0.000. why?

}

Проблема

[scrollView setContentOffset:CGPointMake(320*(page -1), 0) animated:YES];    

не работает, если нажата кнопка.(Работает нормально, если вызывается showPage в PhoneContentController.m)

Есть предложения?

1 Ответ

0 голосов
/ 30 июля 2011

Я думаю, что в:

- (IBAction)toPageTwo:(id)sender;
{
   NSLog(@"button clicked...");
   PhoneContentController * callSview = [[PhoneContentController alloc] init];
   [callSview showPage:2];

вам не нужно выделять новый PhoneContentController, поскольку вы уже находитесь в своем основном PhoneContentController.Просто отправьте showPage сообщение на self.

- (IBAction)toPageTwo:(id)sender;
{
   NSLog(@"button clicked...");
   [self showPage:2];

Это всего лишь предположение, поскольку я не знаю точно, к какому классу относится ваш метод (но я предполагаю, что это PhoneContentController).

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