2014-09-24 132 views
-1

在我的調試器中,我的自定義查詢創建時沒有崩潰。然而,getItemView不會被調用,我不知道爲什麼:爲什麼我的自定義ParseQueryAdapter中沒有getItemView被調用?

public class CustAdapter extends ParseQueryAdapter { 

public CustAdapter(Context context) { 
    super(context, new ParseQueryAdapter.QueryFactory<MyData>() { 

     public ParseQuery create() { 
       ParseQuery custQuery = new ParseQuery("MyData"); 

       ParseUser currentUser = ParseUser.getCurrentUser(); 

       String selectedOption = MainActivity.getSelectedOption(); 

       custQuery.whereEqualTo("option", 
             selectedOption).whereExists("bookTitle"); 

       questionsQuery.orderByDescending("createdAt"); 

       return custQuery; 
     } // end create() 
    }); // end anon inner class and end super call 
} 


public static class ViewHolder { 
    TextView titleTV; 
    TextView detailsTV; 
} 


@Override 
public View getItemView(ParseObject object, View v, ViewGroup parent) { 
    ViewHolder holder; 
    if (v == null) { 
     v = View.inflate(getContext(), R.layout.book_item, null); 
     super.getItemView(object, v, parent); 
     holder = new ViewHolder(); 
     holder.titleTV = (TextView)v.findViewById(R.id.bTitle); 
     holder.detailsTV = (TextView)v.findViewById(R.id.bDetails); 
     v.setTag(holder); 
    } 
    else 
     holder = (ViewHolder)v.getTag(); 

    holder.titleTV.setText(object.getString("bookTitle")); 
    holder.detailsTV.setText(object.getString("bookDetails")); 
    return v; 
} 
} 

在我的片段,我做的:CustAdapter適配器=新CustAdapter(getActivity()); lv.setAdapter(適配器)。

回答

1

代碼是正確的,問題是設置列表視圖在xml中不可見。使其在控制器中可見可顯示雲結果。令人驚訝的是,android studio仍然沒有在getItemView的if語句中設置斷點!

相關問題