iPhone request for member `treeNode ' in something not a structure or union 的解决办法

问题:当使用成员变量时,提示错误信息。

 

问题:我要实现一个树结构的UITableView,,然后重新派生了UITableViewCell,并为其添加了TreeNode节点。
代码如下:

@interface TreeViewCell : UITableViewCell {
        
        TreeNode* treeNode;//每个单元格表示一个节点

}

@property (retain) TreeNode* treeNode;




@implementation TreeViewCell
@synthesize onExpand,imgIcon,owner,treeNode;

然后我在另一个view使用TreeViewCell的treeNode,如下

        UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
           [cell OnExpandCell];
        TreeNode * treeNode = cell.treeNode;


但在TreeNode * treeNode = cell.tree这一行提示如下错误:
   request   for   member   `treeNode '   in   something   not   a   structure   or   union
如图:

 

 

该问题的解决办法是: 

 

TreeViewCell *cell = (TreeViewCell*)[self.tableView cellForRowAtIndexPath:indexPath];
        TreeNode * treeNode = cell.treeNode;

 

方法二:如果要判断一个节点是否有子节点,可以在treeNode中添加一个方法,然后利用uitableviewcell来的属性值来获取。

           也可以使用方法的方式返回一个Bool类型的值,再去做判断。 

 

 

posted on 2012-02-06 09:46  wtq  阅读(6941)  评论(0编辑  收藏  举报