Do the following steps
1) ในการทำงานของปุ่ม (โดยการคลิกที่ปุ่มนั้นจะปรากฏขึ้นมา) ให้เขียนโค้ด
[ที่นี่ PopOverContentViewController เป็น viewController ที่ฉันมีมุมมองตารางและรายการหลายรายการที่ควรแสดงเมื่อป๊อปโอเวอร์มาถึง]
- (IBAction)callPopOver:(id)sender
{
UIButton *button = (UIButton*)sender;
PopOverContentViewController1 *popOverContent = [[PopOverContentViewController1 alloc]initWithNibName:@"PopOverContentViewController1" bundle:nil];
UINavigationController *navbar = [[UINavigationController alloc] initWithRootViewController:popOverContent];
navbar.contentSizeForViewInPopover = CGSizeMake(266, 200);
popover = [[UIPopoverController alloc] initWithContentViewController:navbar];
popover.delegate = self;
[popover presentPopoverFromRect:CGRectMake(button.frame.size.width / 2, button.frame.size.height / 1, 1, 1) inView:button permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];
[popover setPopoverContentSize:CGSizeMake(266, 200) animated:YES];
[popUpContent release];
}
2) ตอนนี้เพื่อเปลี่ยนมุมมองตารางเมื่อคลิกที่แถวใดก็ได้พิมพ์รหัสนี้ใน PopOverViewController.m
[ในที่นี้ PopOverViewController2 คือ ViewController ที่เรามีมุมมองตารางถัดไปที่จะแสดง]
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
PopOverViewController2 *secondViewController = [[PopOverViewController2 alloc] init];
[self.navigationController pushViewController:secondViewController animated:YES];
[secondViewController release];
}
3) เพื่อหลีกเลี่ยงการเปลี่ยนแปลงขนาดของป๊อปโอเวอร์ในขณะที่การนำทางเขียนโค้ดต่อไปนี้ใน viewDidLoad ของตัวควบคุมมุมมองทั้งสอง (เช่น PopOverContentViewController1 และ PopOverContentViewController2)
- (void)viewDidLoad
{
[super viewDidLoad];
[self setContentSizeForViewInPopover:CGSizeMake(266, 200)];
}
person
MouzmiSadiq
schedule
11.09.2012