Rah*_*yas 24 objective-c uiviewcontroller uiview iphone-sdk-3.0 ios
我有一个UIViewController,我在其中添加了一个从界面构建器添加的UITextView.现在,当我点击超链接或电话号码时,我想推送视图.我能够使用stackoverflow中找到的方法检测到哪个url被点击了.这是方法
@interface UITextView (Override)
@end
@class WebView, WebFrame;
@protocol WebPolicyDecisionListener;
@implementation UITextView (Override)
- (void)webView:(WebView *)webView decidePolicyForNavigationAction:(NSDictionary *)actionInformation request:(NSURLRequest *)request frame:(WebFrame *)frame decisionListener:(id < WebPolicyDecisionListener >)listener
{
NSLog(@"request: %@", request);
}
@end
Run Code Online (Sandbox Code Playgroud)
现在我想得到textview的superview的viewController,这样当我点击URL/Phone Number时我就可以推送另一个viewController.
Fel*_*xyz 76
您无法直接访问它,但您可以通过遍历响应程序链找到下一个视图控制器(如果有).
这就是Three20框架的作用:
- (UIViewController*)viewController
{
for (UIView* next = [self superview]; next; next = next.superview)
{
UIResponder* nextResponder = [next nextResponder];
if ([nextResponder isKindOfClass:[UIViewController class]])
{
return (UIViewController*)nextResponder;
}
}
return nil;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
39110 次 |
| 最近记录: |