how to push view controller from a UIView#39;s subclass(如何从 UIView 的子类推送视图控制器)
问题描述
我创建了一个视图CategoryTableView",它是 UIView 的子类.而CategoryTableView 包含一个UITableView.我将 CategoryTableView 作为子视图添加到来自 UIViewController 的子类 HomeViewController.现在,我想在 didSelectRowAtIndexPath 执行时推送一个新的视图控制器.但是,在 CategoryTableView 中,我如何推送或呈现另一个视图控制器.我无法进入 CategoryTableView 中的导航控制器.
I created a view "CategoryTableView" that subclass from UIView. And CategoryTableView contains a UITableView. I added CategoryTableView as a subview to HomeViewController that subclass from UIViewController. Right now, I want to push a new view controller when didSelectRowAtIndexPath executes. But, in CategoryTableView, how do I push or present another view controller. I can't get to the navigation controller in CategoryTableView.
推荐答案
CategoryTableView.h
@property (retain, nonatomic) parentViewController *parent; //create one property for parent view like this
CategoryTableView.m
@sythesize parent;
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[parent.navigationController . . .]; // preform action
//OR..
[parent presentModalViewController: . . .]; // present modal view
}
parent.m
//while calling your CategoryTableView assign self to your parent object
CategoryTableView *tblView = [CategoryTableView alloc] init];
tblView.parent = self;
这篇关于如何从 UIView 的子类推送视图控制器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何从 UIView 的子类推送视图控制器
基础教程推荐
- 如何比较两个 NSDate:哪个是最近的? 2022-01-01
- SwiftUI-ScrollViewReader的ScrollTo不滚动 2022-01-01
- Play 商店的设备兼容性问题 2022-01-01
- 如何将图像从一项活动发送到另一项活动? 2022-01-01
- iOS - UINavigationController 添加多个正确的项目? 2022-01-01
- navigationItem.backBarButtonItem 不工作?为什么上一个菜单仍然显示为按钮? 2022-01-01
- UIImage 在开始时不适合 UIScrollView 2022-01-01
- 为什么姜饼模拟器方向卡在应用程序中? 2022-01-01
- Xcode UIView.init(frame:) 只能在主线程中使用 2022-01-01
- Android Volley - 如何动画图像加载? 2022-01-01
