问题描述
|
在Three20中,我有一个包含UIButton的自定义单元格。按下UIButton时,我会触发\“ tap \”方法:
UIButton* cevapla=[UIButton buttonWithType:UIButtonTypeCustom];
[cevapla addTarget:self
action:@selector(tap:)
forControlEvents:UIControlEventTouchUpInside];
和
-(void)tap:(id)sender {
TTURLAction* action=[TTURLAction actionWithURLPath::@\"tt://secondviewcontroller/\"
];
[action applyAnimated:YES];
[[TTNavigator navigator] openURLAction:action];
}
到目前为止还可以。 SecondViewController加载了动画。但是在SecondViewController中,当用户单击另一个链接(这会打开另一个视图控制器)时,没有“后退”按钮。如果第二个视图控制器中的链接以\“ http:// \”开头,则它将打开内部Web浏览器\“没有后退按钮\”,并且无法转到其他位置,用户必须重新打开该应用程序。
这种点击方法有什么问题?
注意:我尝试使用[[TTNavigator navigatorForView:self.superview] openURLAction:action];
来代替[[TTNavigator navigator] openURLAction:action];
,但是没有变化。
解决方法
已解决。我的SecondViewController \的title属性设置为@ \“ \”(空字符串)。如果未设置此属性,导航控制器将找不到要写入后退按钮的文本,因此它根本不会显示它。可以预期,但是很奇怪。如果title属性为nil,则显示默认的后退文本,但如果为空字符串,则不显示任何按钮。实际上,没有人将title设置为空字符串。我已将其设置为空以进行调试。