iOS11以后,將UIView賦值給self.navigationItem.titleView后粥诫,如果賦值的UIView中含有按鈕剥纷,點擊是無效的空郊,因為這個UIView的可觸控區(qū)域不是沒有的号阿。
所以想要在導航欄里做按鈕的點擊事件婆瓜,需要繼承一個UIView讲弄,然后重寫@property(nonatomic, assign) CGSize intrinsicContentSize;的區(qū)域沮翔,
MyTitleView *titleView = [[MyTitleView alloc] initWithFrame:CGRectMake(0,0, SCREEN_WIDTH,44)];
titleView.intrinsicContentSize = CGSizeMake(SCREEN_WIDTH,44); ? ?self.navigationItem.titleView = titleView;
這樣titleView上的按鈕就可以接受點擊事件了啥容。