我有一个UIViewController,当它加载时,它会加载这个..
MapViewController *mapController = [[MapViewController alloc] initWithNibName:@"MapView" bundle:nil];
self.mapViewController = mapController;
[self.view insertSubview:mapController.view atIndex:0];
[mapController release];
我还有一个切换视图按钮,可以切换到表格视图...
if (self.tableViewController ==nil)
{
TableViewController *tableController = [[TableViewController alloc] initWithNibName:@"TableView" bundle:nil];
self.tableViewController = tableController;
[tableController release];
//[self.view insertSubview:detailController atIndex:0];
}
if (self.mapViewController.view.superview == nil)
{
[tableViewController.view removeFromSuperview];
[self.view insertSubview:mapViewController.view atIndex:0];
}
else
{
[mapViewController.view removeFromSuperview];
[self.view insertSubview:tableViewController.view atIndex:0];
}
我试图通过在表视图中选择一行来将视图更改为详细视图,但我根本不知道如何调用它。我所有的方法似乎都失败了!请帮帮我!
发布于 2009-05-10 09:04:37
将UITableViewDelegate协议添加到您的控制器类。
@interface myTableViewController : UITableViewController <UITableViewDelegate>
在创建表veiw控制器时,使用以下命令将其委托设置为控制器:
myTableViewController.delegate = self; // Assuming your setup code runs within the table view controller
在您的tableViewController中,实现didSelectRowAtIndexPath:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
int rowSelected = [indexPath indexAtPosition:0]; // Assuming your UITableView has a single section.
发布于 2009-05-10 08:50:30
处理行选择时需要注意的类是UITableViewDelegate,它的方法如下:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
https://stackoverflow.com/questions/844895
复制相似问题