Question: how to hide uibarbuttonitem programmatically?
Answer: There is no way to "hide" a UIBarButtonItem you must remove it from the superView and add it back when you want to display it again. One way to do it is use the initWithCustomView:(UIView *) property of when allocating the UIBarButtonItem . Subclass for UIView will have hide/unhide property.