title: Removing UIPickerView Blue Highlight
body: <p>For some time now I've been trying to remove the blue highlight in UIPickerView when you're using the <code>pickerView:viewForRow:forComponent:reusingView:</code> delegate.</p>
  
  <p>I'm sure many here have been there and wanted to remove that ugly blue highlight in the UIPickerView.</p>
  
  <p>The <code>UIPickerView</code> has a <code>UITableView</code> - rather a <code>UIPickerTable</code> inside which has cells where your <code>UILabels/UIViews/UIImageViews</code> or whatever lay. 
  Logically, if it's a tableview, then we can just access the cell and <code>setSelectionStyle:UITableViewCellSelectionStyleNone</code> right?
  <strong>Wrong.</strong></p>
  
  <p><code>UIPickerTable</code> is a private class of the API and does not allow you to set anything in there.</p>
  
  <p>I've managed to get all the subviews in my picker 
  <pre><code>[[myPickerView subviews] objectAtIndex:someIndexValue];
  </pre></code></p>
  
  <p>So I tried this in <code>pickerView:didSelectRow:</code> and <code>pickerView:viewForRow:</code> 
  <pre><code>NSIndexPath *path = [[[myPickerView subviews] objectAtIndex:5] indexPathForSelectedRow];
  [[[[myPickerView subviews] objectAtIndex:5] cellForRowAtIndexPath:path] setSelectionStyle:UITableViewCellSelectionStyleNone];
  </pre></code>
  And this:
  <pre><code>[[[myPickerView subviews] objectAtIndex:5] setSelectionStyle:UITableViewCellSelectionStyleNone];
  </pre></code></p>
  
  <p>None of them worked 'cause it's private. Giving me this error:  </p>
  
  <p><strong>* Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIPickerTable setSelectionStyle:]: unrecognized selector sent to instance 0x64479a0'*</strong></p>
  
  <p>I know about setting the <code>view</code>'s frame to the size of the <code>pickerView:rowHeightForComponent:</code> and then doing:
  <pre><code>label.UserInteractionEnabled = YES;
  </pre></code>
  Before returning it on <code>pickerView:viewForRow</code> method.</p>
  
  <p>But it doesn't really remove the highlight, it just <strong>covers</strong> it and removes the UIPickerView's ability to autoscroll when some item is just clicked.</p>
  
  <p><strong>Does anyone know how can I remove this blue highlight from an <code>UIPickerView</code> with an <code>UILabel/UIView/UIImageView</code> inside?</strong></p>
  
  <p>I'm <strong>NOT</strong> talking about the selectionIndicator.
  This is the highlight that appears when you click an image inside the pickerView: <img src="https://i.stack.imgur.com/fr7hM.png" alt="alt text"></p>
  
  <p>PS: This pickerView has NO selectionIndicator and is customized. However, the customization has nothing to do with the issue. This issue is simply for the fact that there's an object that inherits form UIView inside the picker's cell and <code>viewForRow</code> is being used.</p>