当用户按下按钮时,我有这个代码:
SettingsViewController *settingsViewController = [[SettingsViewController alloc] init];
WEPopoverController *popover = [[WEPopoverController alloc] initWithContentViewController:settingsViewController];
[popover setDelegate:self];
[popover presentPopoverFromRect:settingsWheel.frame
inView:self.view
permittedArrowDirections:UIPopoverArrowDirectionUp
animated:YES];
[popover setPopoverContentSize:CGSizeMake(150, 200)];
然后在设置视图控制器中,我有:
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
self.view.backgroundColor = [UIColor blueColor];
self.contentSizeForViewInPopover = CGSizeMake(150, 200);
}
return self;
}
但由于某些未知原因,它只显示背景的蓝色方块而不是箭头或圆角。
我有什么想法来展示这些?
答案 0 :(得分:3)
确保在GitHub上包含WEPopoverController附带的图像。它包括所有方向的箭头以及弹出窗口的背景。
答案 1 :(得分:1)
下面是出现Popover的代码(我从github上的WEPopoverTableView类中获取)
UIViewController *contentViewController = [[WEPopoverContentViewController alloc] initWithStyle:UITableViewStylePlain];
CGRect frame = [tableView cellForRowAtIndexPath:indexPath].frame;
self.popoverController = [[[WEPopoverController alloc] initWithContentViewController:contentViewController] autorelease];
[self.popoverController presentPopoverFromRect:frame
inView:self.view
permittedArrowDirections:UIPopoverArrowDirectionDown|UIPopoverArrowDirectionUp
animated:YES];
currentPopoverCellIndex = indexPath.row;
[contentViewController release];