CheckBoxをタッチすると、Clickイベントが発生して必ずチェックされます。

一瞬でもチェックさせない様にするには、
CheckBoxを継承した派生クラスでperformClickをオーバーライドするしか方法はありません。

public class LimitedCheckBox extends CheckBox {
	
	public interface OnLimitCheckEvent {
		
		boolean isLimited();
	}
	
	OnLimitCheckEvent mLimitCheck = null;
	
	public void setOnPerformClick(OnLimitCheckEvent onLimit) {
		
		mLimitCheck = onLimit;
	}
	
	public LimitedCheckBox(Context context) {
		super(context);
	}
	
	public LimitedCheckBox(Context context, AttributeSet attrs) {
		super(context, attrs);
	}
	
	public LimitedCheckBox(Context context, AttributeSet attrs, int defStyle) {
		super(context, attrs, defStyle);
	}

	@Override
	public boolean performClick() {
		
		if ( isChecked() || (mLimitCheck != null && mLimitCheck.isLimited() == false)) {
			
			return super.performClick();
		}
		
		// don't toggle
		return false;
	}
}