从阵列中删除UIBarButtonItem FlexibleSpace会删除所有FlexibleSpace项

时间:2017-09-22 21:03:08

标签: ios objective-c nsmutablearray uibarbuttonitem ios11

我有一个用例,我根据某些条件在UIToolbar中添加和删除UIBarButtonItems。我的iOS11之前的模式是保留对它们的强引用,并使用removeObject:将它们从toolbar.items.mutableCopy数组中删除,然后使用该变异数组设置toolbar.items

使用iOS11,removeObject:从阵列中移除所有的FlexibleSpace对象,而不仅仅是我持有强引用的那个。似乎isEqual方法现在使用值比较而不是指针比较。

我的解决方法是手动跟踪数组中项目的位置,并按索引删除它们。

我的问题是:有没有其他人经历过这种情况,这是否记录在任何地方?如果是这样,你的解决方法是什么?

干杯!

0 个答案:

没有答案