Buggy code:
@ Override public boolean onContextItemSelected ( MenuItem item ) { } public void addNewWorkPlace ( View view ) { } private AlertDialog getWorkPlaceView ( final WorkPlace item ) { int action = MappService . DO_ADD_WORK_PLACE ; LayoutInflater inflater = this . getLayoutInflater ( ) ; final View dialogView = inflater . inflate ( activity_servprov_wrkdetail_list , null ) ; mName = ( ( EditText ) ( dialogView . findViewById ( editTextName ) ) ) ; mLoc = ( ( EditText ) ( dialogView . findViewById ( editTextLoc ) ) ) ; mPhone1 = ( ( EditText ) ( dialogView . findViewById ( editTextPhone1 ) ) ) ; mPhone2 = ( ( EditText ) ( dialogView . findViewById ( editTextPhone2 ) ) ) ; mEmailIdwork = ( ( EditText ) ( dialogView . findViewById ( editTextEmail ) ) ) ; mConsultFee = ( ( EditText ) ( dialogView . findViewById ( editTextConsultationFees ) ) ) ; mServPtType = ( ( Spinner ) ( dialogView . findViewById ( viewWorkPlaceType ) ) ) ; mCity = ( ( Spinner ) ( dialogView . findViewById ( editTextCity ) ) ) ; mState = ( ( Spinner ) ( dialogView . findViewById ( editTextState ) ) ) ; mStartTime = ( ( Button ) ( dialogView . findViewById ( buttonStartTime ) ) ) ; mEndTime = ( ( Button ) ( dialogView . findViewById ( buttonEndTime ) ) ) ; mSpeciality = ( ( Spinner ) ( dialogView . findViewById ( editTextSpeciality ) ) ) ; mExperience = ( ( EditText ) ( dialogView . findViewById ( editTextExperience ) ) ) ; mPinCode = ( ( EditText ) ( dialogView . findViewById ( editTextPinCode ) ) ) ; mQualification = ( ( EditText ) ( dialogView . findViewById ( editTextQualification ) ) ) ; mMultiSpinnerDays = ( ( Button ) ( dialogView . findViewById ( editTextWeeklyOff ) ) ) ; mServCatagory = ( ( Spinner ) ( dialogView . findViewById ( spinServiceProvCategory ) ) ) ; TextView workhourLBL = ( ( TextView ) ( dialogView . findViewById ( viewWorkHrsLbl ) ) ) ; if ( item != null ) { action = MappService . DO_EDIT_WORK_PLACE ; mName . setText ( item . getName ( ) ) ; mLoc . setText ( item . getLocation ( ) ) ; mPhone1 . setText ( item . getPhone ( ) ) ; mPhone2 . setText ( item . getAltPhone ( ) ) ; mEmailIdwork . setText ( item . getEmailId ( ) ) ; if ( mCategory . equals ( getString ( pharmacist ) ) ) { mConsultFee . setEnabled ( false ) ; } else { mConsultFee . setText ( String . format ( "%.2f" , item . getConsultFee ( ) ) ) ; } mServPtType . setSelection ( Utility . getSpinnerIndex ( mServPtType , item . getServPointType ( ) ) ) ; mCity . setSelection ( Utility . getSpinnerIndex ( mCity , item . getCity ( ) . getCity ( ) ) ) ; mState . setSelection ( Utility . getSpinnerIndex ( mState , item . getCity ( ) . getState ( ) ) ) ; mStartTime . setText ( Utility . getTimeString ( item . getStartTime ( ) ) ) ; mEndTime . setText ( Utility . getTimeString ( item . getEndTime ( ) ) ) ; mQualification . setText ( item . getQualification ( ) ) ; mMultiSpinnerDays . setText ( item . getWorkingDays ( ) ) ; mServCatagory . setSelection ( Utility . getSpinnerIndex ( mServCatagory , item . getServCategory ( ) ) ) ; mExperience . setText ( String . format ( "%.01f" , item . getExperience ( ) ) ) ; if ( ( item . getPincode ( ) ) != null ) { mPinCode . setText ( item . getPincode ( ) ) ; } ArrayList < String > specs = new ArrayList < > ( ) ; specs . add ( item . getSpeciality ( ) ) ; Utility . setNewSpec ( this , specs , mSpeciality ) ; mSpeciality . setSelection ( Utility . getSpinnerIndex ( mSpeciality , item . getSpeciality ( ) ) ) ; } workhourLBL . setClickable ( false ) ; mSpeciality . setClickable ( true ) ; <START_BUG> mServCatagory . setClickable ( true ) ; <END_BUG> mStartTime . setOnClickListener ( new View . OnClickListener ( ) { @ Override public void onClick ( View v ) { Utility . timePicker ( v , mStartTime ) ; } } ) ; mEndTime . setOnClickListener ( new View . OnClickListener ( ) { @ Override public void onClick ( View v ) { Utility . timePicker ( v , mEndTime ) ; } } ) ; mMultiSpinnerDays . setOnClickListener ( new View . OnClickListener ( ) { @ Override public void onClick ( View v ) { showDaysSelectionDialog ( ) ; } } ) ; mServCatagory . setOnItemSelectedListener ( new AdapterView . OnItemSelectedListener ( ) { @ Override public void onItemSelected ( AdapterView < ? > parentView , View selectedItemView , int position , long id ) { String servCategory = mServCatagory . getSelectedItem ( ) . toString ( ) ; if ( ( ! ( TextUtils . isEmpty ( servCategory ) ) ) && ( ! ( servCategory . equals ( getString ( select_category ) ) ) ) ) { Bundle bundle = new Bundle ( ) ; bundle . putInt ( "loginType" , SERVICE_LOGIN ) ; SearchServProvForm mForm = new SearchServProvForm ( ) ; mForm . setCategory ( mServCatagory . getSelectedItem ( ) . toString ( ) ) ; bundle . putParcelable ( "form" , mForm ) ; mConnection . setData ( bundle ) ; mConnection . setAction ( DO_GET_SPECIALITY ) ; if ( Utility . doServiceAction ( ServProvProfileActivity . this , mConnection , BIND_AUTO_CREATE ) ) { Utility . showProgress ( getApplicationContext ( ) , mFormView , mProgressView , true ) ; } } } @ Override public void onNothingSelected ( AdapterView < ? > parentView ) { } }

Fix:
mServCatagory . setClickable ( false ) ;