0

1.在Facebook iOS应用中,当打开一个新帖子但没有输入任何内容时,右上角的帖子按钮是无效的。输入任何内容后,它将立即激活。如何实现该效果?

2.我想制作一个页面有很多标签名称作为单元格内容,用户可以选择一些标签来过滤内容。基本上,有两个部分,选定部分和未选定部分。当用户触摸未选择部分中的单元格时,它将飞到选定部分。我希望只有在选定部分中至少有一个单元格时才激活右上角的 GO 按钮(最初,所有标签名称都在未选定部分中)。那么如何实现让tableview单元格影响导航栏的GO按钮呢?谢谢!

4

2 回答 2

0

您可以使用enabledUIButton 的属性并检测何时启用按钮。

对于 UITextView,可能你有一个可以帮助你的委托方法。从这里阅读所有委托方法。例如,您可以使用textViewDidChange:(UITextView *)textView方法。在其中,只有[textView.text length]大于 0 时才能启用按钮。

对于第二个答案,您应该有一个模型(可能是一个数组)来存储所选标签。管理按钮状态的正确方法应该是使用KVO,检测每次模型更改并仅在数组中有项目时才启用按钮。另一种方法应该使用在模型中添加或删除项目的相同方法,以正确启用或禁用您的按钮。

对不起我的英语,但我希望这个答案有帮助!

于 2013-07-01T00:53:46.250 回答
0

使用以下代码...由代码中的注释解释。

viewDidLoad

textField.delegate = self; //sets delegate to this file so it calls the method below

.h文件中

@interface ViewController : UIViewController <UITextFieldDelegate> //makes it so we can set the delegate

.m文件中

- (BOOL) textField:(UITextField *)aTextField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { //method that gets called on edit
if([textField.text length] > 0) { //if contains characters
tabBarButton.enabled = YES; //set enabled
} 
else { //if not
tabBarButton.enabled = NO; //set disabled
}
return YES;
}

您将不得不相应地进行更改tabBarButtontextField因为这些都是变量。

于 2013-07-01T02:06:30.420 回答