2012-02-26 22 views
0
protected void onPostExecute(ArrayList<Container> result) { 
      if (exception != null) { 
       showAlert("Error", exception.getMessage()); 
      } 
      ArrayList<Container> containerList = result; 
      containerNames = new String[containerList.size()]; 
      containers = new Container[containerList.size()]; 
      SharedPreferences myprefs = getSharedPreferences("myCustomSharedPrefs", Context.MODE_PRIVATE); 
      String containerName = myprefs.getString("name", null).trim(); 
      if (containerList != null) { 
       for (int i = 0; i < containerList.size(); i++) { 
        Container container = containerList.get(i); 
        containers[i] = container; 
        containerNames[i] = container.getName().trim(); 
        if(containerNames[i].equals(containerName)) 
        { 
         abcd = containerList.get(i); 
         Log.d("value of abcd", abcd.getName()); 
        } 

       } 
      } 
      //abcd = containers[2]; 
      //setContainerList(); 
      loading = false; 
      new LoadCDNContainersTask().execute((Void[]) null); 
     } 

    } 

Log.d行不通的,因爲沒有價值的logcat的
我覺得可能是一個問題被打印的另一對象,因爲裏面的if語句可能無法訪問的內容我無法從列表中提取對象?我得到一個空值,當我嘗試存儲它

+1

你應該跟蹤輸入的方法。你會知道異常的價值。順便說一句,在java中也有一個調試器。 ;) – Snicolas 2012-02-26 07:57:08

+0

你是否檢查過'containerName'的值不是'null'? – 2012-02-26 07:57:56

+0

@TedHopp是的,我檢查它不是null。 – user1230904 2012-02-26 07:58:47

回答

0

我看到這兩條線就出問題了。

containerNames = new String[containerList.size()]; 
    containers = new Container[containerList.size()]; 

它們應該分別具有類型規範String []和Container []。我也沒有看到containerList考慮結果傳入並且可以訪問它的要點。

相關問題