2015-01-15 50 views
0

在我的Android項目活動,即我使用了三個,如果對照和我檢查三個IF控制但三 條件實際上是真實的,但控制未進入到下一個(第二和第三)if語句。,如果在我的Android活動控制工作不正常

代碼:

btnmangerphoto.setOnClickListener(新OnClickListener(){

 @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      countMngr=1; 
      RestaurentName=edtRestaurantName.getText().toString(); 

      Intent intent = new Intent(Intent.ACTION_PICK, 
         android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI); 
         startActivityForResult(intent, 0); 
        // ManagerPhoto="ok"; 
        //new LongRunningedeleteonetimedeal().execute(); 
         //count=1; 
     } 
    }); 

    btncomapnylogo.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      countLogo=2; 
      RestaurentName=edtRestaurantName.getText().toString(); 
      Intent intent = new Intent(Intent.ACTION_PICK, 
         android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI); 
         startActivityForResult(intent, 0); 

        /* RestaurentName=edtRestaurantName.getText().toString(); 
         NamePrefix=edtNamePrefix.getText().toString(); 
         FirstName=edtFirstName.getText().toString(); 
         LastName=edtLastName.getText().toString(); 
         Telephone1=edtFirstNumber.getText().toString(); 

         Telephone2=edtSecondNumber.getText().toString(); 
         Telephone3=edtThirdNumber.getText().toString(); 


         Email=edtEmail.getText().toString(); 

         AddressLine1=edtAddressLine1.getText().toString(); 
         AddressLine2=edtAddressLine2.getText().toString(); 
         Speciality=edtSpeciality.getText().toString(); 

         Cuisine = spinner.getSelectedItemsAsString(); 
    */ 
     } 

    }); 

    //save Company Photos 


    btnextraphotos.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      countCphoto=3; 
      RestaurentName=edtRestaurantName.getText().toString(); 

      //Toast.makeText(ViewProvider.this, "imagecompanyphoto" , Toast.LENGTH_LONG).show(); 
      Intent intent = new Intent(Intent.ACTION_PICK, 
         android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI); 
         startActivityForResult(intent, 0); 

     } 
    }); 


if(countCphoto==3){ 
       cmpnayencodedString = Base64.encodeToString(byte_arr, 0); 

       nameValuePairs.add(new BasicNameValuePair("image",cmpnayencodedString)); 
       Toast.makeText(ViewProvider.this, "cphoto=" +fileName , Toast.LENGTH_SHORT).show(); 
       new LongRunningSaveCompanyPhotos().execute(); 
      } 


      if(countMngr==1){ 
       mngrphotoencodedString= Base64.encodeToString(byte_arr, 0); 
       Toast.makeText(ViewProvider.this, "mangr" + fileName , Toast.LENGTH_SHORT).show(); 
       nameValuePairs.add(new BasicNameValuePair("image",mngrphotoencodedString)); 
       //new LongRunningSaveCompanyPhotos().execute(); 
       new LongRunningSaveManagerPhoto().execute(); 

        } 

      if(countLogo==2) { 
       logoFilename=fileName; 
       Toast.makeText(ViewProvider.this, "logo=" + logoFilename , Toast.LENGTH_SHORT).show(); 
      } 
+0

不CLEA [R什麼你問... – 2015-01-15 16:41:07

+0

發表您的完整代碼的if語句是正確的,但你在哪裏,以countLogo,countPhoto,countMmgr分配值 – 2015-01-15 16:43:11

回答

0

這是不可能的控制通過,如果你的條件是假的。同樣的,如果你的條件是真實的,它裏面去。

按你的說法,你的第一個條件,通過這意味着countCphoto = 3

但第二個條件和第三個條件不進去,該條件是假的很明顯。

你可以嘗試一個簡單的 Toast.MakeText(.... 與countMngr,看它是否真的是1?

只是條件之前也嘗試CountLogo相同的,讓我知道的值。 ..

在該方法的一個前這段代碼被稱爲有一個機會,這個值被得到改變或以某種方式重新初始化。

希望以上建議幫助!

0

我絕對不知道,你的問題是什麼,但據我瞭解,你應該給記錄一試。如果條件

只是做一個日誌語句中的每個。 如

if (countLogo == 2) { 
    Log.v("countLogo", String.valueOf(countLogo)); 
    logoFileName = fileName; 
    // ... 
} 

或者你可以把上面記錄的東西你如果條件