Home | History | Annotate | Download | only in android
      1 package org.robolectric.android;
      2 
      3 import android.content.Context;
      4 import android.util.AttributeSet;
      5 import android.widget.TextView;
      6 import org.robolectric.R;
      7 
      8 public class CustomStateView extends TextView {
      9 
     10   private static final int[] STATE_FOO = {R.attr.stateFoo};
     11 
     12   public boolean isFoo;
     13 
     14   public CustomStateView(Context context) {
     15     super(context);
     16   }
     17 
     18   public CustomStateView(Context context, AttributeSet attrs) {
     19     super(context, attrs);
     20   }
     21 
     22   public CustomStateView(Context context, AttributeSet attrs, int defStyle) {
     23     super(context, attrs, defStyle);
     24   }
     25 
     26   @Override
     27   protected int[] onCreateDrawableState(int extraSpace) {
     28     final int[] drawableState = super.onCreateDrawableState(extraSpace + 1);
     29     if (isFoo) {
     30       mergeDrawableStates(drawableState, STATE_FOO);
     31     }
     32     return drawableState;
     33   }
     34 }
     35