問題原因:
view並沒有消失,只是變透明瞭而已。
下面是從蘋果官方文檔拷貝的:
UITableViewCell changes the background color of all sub views when cell is selected or highlighted.
意思就是說當UITableViewCell被選中或者高亮的時候,它的所有子view的顏色都會改變。
解決方法:
// 用button包裝view,這樣view就不會隨着cell選中時高亮了
UIButton *accessoryView = [[UIButton alloc] init];
[accessoryView addSubview:item.accessoryView];
self.arrowAccessoryView = accessoryView;
[self.contentView addSubview:self.arrowAccessoryView];
至於爲什麼?我現在也沒搞懂,只是投機取巧用一個button包裝了view,恰好就能用了,希望如果您看到這篇文章,並解決了問題,或者你有什麼想法,可以直接留言!