我正在创建有FirstViewController
的项目。在FirstViewController
中,我绘制了UITableView
,并以适当的方式显示了所有数据。在myTableView上,我提供了编辑UITabelView
(删除或插入行)的功能
我的EditBtton (UIBarButtonItem
)在UINavigationBar
上,当我点击它时,UITableView
进入编辑模式。
- (void) EditTable:(id)sender
{
if(self.editing)
{
[super setEditing:NO animated:NO];
[self.tblView setEditing:NO animated:NO];
[self.navigationItem.rightBarButtonItem setTitle:@"Edit"];
[self.navigationItem.rightBarButtonItem setStyle:UIBarButtonItemStylePlain];
[self myCustomMethod]; // custom method
}
else
{
[super setEditing:YES animated:YES];
[self.tblView setEditing:YES animated:YES];
[self.tblView reloadData];
[self.navigationItem.rightBarButtonItem setTitle:@"Done"];
[self.navigationItem.rightBarButtonItem setStyle:UIBarButtonItemStyleDone];
}
}
为您的信息:所有的工作是正确和良好的。
我只想知道如何在编辑模式下运行我的UITableView
,即使我没有像这样使用UITableViewController
@interface FirstViewController : UIViewController // here i have UIViewController not UITableViewController
那么当我写这样的条件时,它是怎么可能的,
if(self.editing)
然后它检查正确的方式,一般应该是if(self.tableViewObj.editing)
注意:我没有任何错误,但我只想知道,它是如何可能的?,它是如何工作的?哪一个对我最合适if(self.editing)还是if(self.tableViewObj.editing)?
发布于 2013-04-01 08:06:25
这都是关于你的UIBarButtonItem。它将控制器切换到编辑状态。如文件所述:
@property(非原子,getter=isEditing) BOOL编辑讨论如果是,视图控制器当前允许编辑;否则,不允许。
如果视图是可编辑的,并且关联的导航控制器包含一个“编辑完成”按钮,则会显示“完成”按钮;否则,将显示“编辑”按钮。单击任一按钮将切换此属性的状态。通过将导航项的自定义左视图或右视图设置为editButtonItem方法返回的值,添加“编辑完成”按钮。将编辑属性设置为视图的初始状态。如果视图已经显示,则使用setEditing:动画:方法作为动作方法来动画此状态的转换。
https://stackoverflow.com/questions/15739661
复制相似问题