据我所知,UIView中的“标记”字段是整数。 为什么我的一个UIButton在它的标签中有“无”值?UIButton标记为零
(lldb) po [button_one tag]
nil
我在设计器中设置了标签0,但仍然返回代码中的nil标签。
据我所知,UIView中的“标记”字段是整数。 为什么我的一个UIButton在它的标签中有“无”值?UIButton标记为零
(lldb) po [button_one tag]
nil
我在设计器中设置了标签0,但仍然返回代码中的nil标签。
po
表示'打印对象'。整数不是一个对象。并且nil
将等于零的整数值。
因此,在lldb中您应该使用p
来打印整数值。这可能是正确的。
我的输出稍有不同,但重点是,试图在一个整数上打印对象(如Wain所述),如果整数为0,则返回nil,如果为非零,则返回错误。 (但在这种情况下仍然LLDB给予p(INT)值)
(lldb) po 0
$0 = 0 <nil>
(lldb) po nil
$1 = 0x00000000 <nil>
(lldb) po button.tag
$2 = 0 <nil>
(lldb) p (int)button.tag
(int) $3 = 0
设置标记1
(lldb) po button.tag
$4 = 1 [no Objective-C description available]
(lldb) p (int)button.tag
(int) $5 = 1
但标记为NSInteger的! – AVEbrahimi
仅仅因为这个名字以'NS'开始并不能使它成为一个对象。看看定义('typedef int NSInteger;')。 – Wain