title: Switch crashes when clicked on Android 5.0
body: <p>When clicking on a switch in my app in Android 5.0 the app crashes with the logcat shown below. The logcat doesn't reference my code anywhere in it, and this switch has worked fine on all previous versions. The switch appears invisible except for the background color and only crashes once clicked on.</p>
  
  <p>After testing, the same thing happens whether I define a setOnCheckedChangeListener function or not. Even if the switch is in the layout but never in the code it will still crash when clicked on.</p>
  
  <p>One of the switches in question:</p>
  
  <pre><code>&lt;Switch
      android:layout_width="90dp"
      android:layout_height="wrap_content"
      android:textOff="Airborn"
      android:textOn="Direct Contact"
      android:textAppearance="?android:attr/textAppearanceMedium"
      android:id="@+id/switchWind"/&gt;
  </code></pre>
  
  <p>And here's how I reference it.</p>
  
  <pre><code>// Doesn't actually matter since same thing happens without this
  Switch sWind = (Switch) findViewById(R.id.switchWind);
  sWind.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
      public void onCheckedChanged(CompoundButton v, boolean isChecked) {
          // Won't reach here
      }
  });
  </code></pre>
  
  <p>Logcat:</p>
  
  <pre><code>11-17 22:09:18.722  30190-30190/com.egondev.android.patientzerotest E/InputEventReceiver﹕ Exception dispatching input event.
  11-17 22:09:18.722  30190-30190/com.egondev.android.patientzerotest E/MessageQueue-JNI﹕ Exception in MessageQueue callback: handleReceiveCallback
  11-17 22:09:18.735  30190-30190/com.egondev.android.patientzerotest E/MessageQueue-JNI﹕ java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.graphics.drawable.Drawable.getPadding(android.graphics.Rect)' on a null object reference
          at android.widget.Switch.hitThumb(Switch.java:694)
          at android.widget.Switch.onTouchEvent(Switch.java:711)
          at android.view.View.dispatchTouchEvent(View.java:8388)
          at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2430)
          at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2119)
          at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2430)
          at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2119)
          at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2430)
          at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2119)
          at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2430)
          at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2119)
          at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2430)
          at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2119)
          at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2430)
          at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2119)
          at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2430)
          at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2119)
          at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2430)
          at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2119)
          at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2314)
          at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1692)
          at android.app.Activity.dispatchTouchEvent(Activity.java:2739)
          at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2275)
          at android.view.View.dispatchPointerEvent(View.java:8578)
          at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4021)
          at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:3887)
          at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3449)
          at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3502)
          at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3468)
          at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3578)
          at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3476)
          at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:3635)
          at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3449)
          at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3502)
          at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3468)
          at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3476)
          at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3449)
          at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:5701)
          at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:5675)
          at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:5646)
          at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:5791)
          at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185)
          at android.os.MessageQueue.nativePollOnce(Native Method)
          at android.os.MessageQueue.next(MessageQueue.java:143)
          at android.os.Looper.loop(Looper.java:122)
          at android.app.ActivityThread.main(ActivityThread.java:5221)
          at java.lang.reflect.Method.invoke(Native Method)
          at java.lang.reflect.Method.invoke(Method.java:372)
          at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
          at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
  11-17 22:09:18.735  30190-30190/com.egondev.android.patientzerotest D/AndroidRuntime﹕ Shutting down VM
  11-17 22:09:18.736  30190-30190/com.egondev.android.patientzerotest E/AndroidRuntime﹕ FATAL EXCEPTION: main
  Process: com.egondev.android.patientzerotest, PID: 30190
  java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.graphics.drawable.Drawable.getPadding(android.graphics.Rect)' on a null object reference
          at android.widget.Switch.hitThumb(Switch.java:694)
          at android.widget.Switch.onTouchEvent(Switch.java:711)
          at android.view.View.dispatchTouchEvent(View.java:8388)
          at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2430)
          at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2119)
          at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2430)
          at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2119)
          at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2430)
          at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2119)
          at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2430)
          at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2119)
          at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2430)
          at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2119)
          at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2430)
          at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2119)
          at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2430)
          at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2119)
          at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2430)
          at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2119)
          at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2314)
          at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1692)
          at android.app.Activity.dispatchTouchEvent(Activity.java:2739)
          at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2275)
          at android.view.View.dispatchPointerEvent(View.java:8578)
          at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4021)
          at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:3887)
          at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3449)
          at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3502)
          at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3468)
          at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3578)
          at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3476)
          at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:3635)
          at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3449)
          at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3502)
          at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3468)
          at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3476)
          at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3449)
          at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:5701)
          at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:5675)
          at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:5646)
          at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:5791)
          at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185)
          at android.os.MessageQueue.nativePollOnce(Native Method)
          at android.os.MessageQueue.next(MessageQueue.java:143)
          at android.os.Looper.loop(Looper.java:122)
          at android.app.ActivityThread.main(ActivityThread.java:5221)
          at java.lang.reflect.Method.invoke(Native Method)
          at java.lang.reflect.Method.invoke(Method.java:372)
          at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
          at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
  </code></pre>