#xcode #ios #uitableview #uipopovercontroller
#xcode #iOS #uitableview #uipopovercontroller
Вопрос:
У меня есть этот код:
if([self.popoverController isPopoverVisible])
{
[self.popoverController dismissPopoverAnimated:YES];
return;
}
UIViewController* popoverContent = [[UIViewController alloc]init];
popoverContent.view = tableView1.view;
self.popoverController = [[UIPopoverController alloc]
initWithContentViewController:popoverContent];
[self.popoverController presentPopoverFromRect:CGRectMake(1200, 280, 50, 50) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionDown animated:TRUE];
[[[popoverController contentViewController] view] setAlpha:1]; //alpha del contenuto del popover
[popoverContent release];
Это работает нормально, но я не могу поместить всплывающее окно в правом нижнем углу, я пытаюсь изменить значения в
[self.popoverController представляет popoverfromrect:CGRectMake(1200, 550, 100, 100) для просмотра:self.view разрешенные направления перемещения:uipopoverarrowdown анимированный: TRUE];
но я хочу, чтобы это всплывающее окно было маленьким в правом нижнем углу … как я могу сделать?
Комментарии:
1. где появляется всплывающее окно, когда вы запускаете этот код?
2. Я не знаю вашу структуру просмотра, но на iPad 1200 в направлении x всплывающее окно переместилось бы с правой стороны. экран имеет ширину всего 1024 дюйма в альбомной ориентации.
3. фактически я удаляю [self.popoverController presentPopoverFromRect:CGRectMake(1200, 280, 50, 50) для просмотра:self.view Разрешенные направления перемещения:UIPopoverArrowDirectionDown анимированный: TRUE];
Ответ №1:
Я решил таким образом:
[popoverController setPopoverContentSize:CGSizeMake(320.0f, 262.0f)];
[self.popoverController presentPopoverFromBarButtonItem:barButton permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
Комментарии:
1. Это будет работать только с элементом панели. Вероятно, не подходит для этого приложения
2. Да, это было бы … для кнопки панели.