片段中的listView不工作(不显示)

片段中的listView不工作(不显示),listview,android-fragments,Listview,Android Fragments,我在片段中有一个listView(ListFragment不适用,因为视图中有其他控件)。 它运行正常,只是没有填充列表。 日志和调试显示适配器的getView被调用,一切正常。只是什么都没有显示 这是碎片 public class FoundFragment extends BaseFragment { private ArrayList<Record> recordsList; private ListView recordsListView; private final St

我在片段中有一个listView(ListFragment不适用,因为视图中有其他控件)。 它运行正常,只是没有填充列表。 日志和调试显示适配器的getView被调用,一切正常。只是什么都没有显示

这是碎片

public class FoundFragment extends BaseFragment {

private ArrayList<Record> recordsList;
private ListView recordsListView;
private final String LOG_TAG = "FoundFragment";
private RecordsListAdapter recordsListAdapter;

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
}//end onCreate
//----------------------------------------------------------------------------------//
@Override
public View onCreateView(LayoutInflater inflater,
        ViewGroup container, Bundle savedInstanceState) {
    // The last two arguments ensure LayoutParams are inflated properly.
    View rootView = inflater.inflate(
            R.layout.frag_found, container, false);
    return rootView;
}//end onCreateView
//------------------------------------------------------------------------------------//
@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
    recordsListView = (ListView) getView().findViewById(R.id.foundRecordsListView);

}
//------------------------------------------------------------------------------------//
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
    new RecordsLoaderTask().execute(false);
}
//------------------------------------------------------------------------------------//
@Override
public void onResume() {
    super.onResume();
    if(recordsListAdapter != null){
    recordsListAdapter.notifyDataSetChanged();
    }
}
/********************************************************************/
@SuppressWarnings("unchecked")
@Override
public void onDataRetrievalSucceeded(Object dataRetrieved) {
    Log.d("FoundFragment", "arrayRetrived with length of " 
                            + ((ArrayList<Record>) dataRetrieved).size());
    recordsList = (ArrayList<Record>) dataRetrieved;
    recordsListAdapter = new RecordsListAdapter(getActivity(), recordsList);
    recordsListView.setAdapter(recordsListAdapter);
    Log.e(LOG_TAG, "adapterOfList is " + recordsListView.getAdapter() + "\n" + 
    "length is " + recordsListView.getAdapter().getCount());
    //TODO check here 
    if(recordsListAdapter != null){
        recordsListAdapter.notifyDataSetChanged();
        }
}//end onDataRetrievalSucceeded
}//end fragment
公共类FoundFragment扩展了BaseFragment{
私有ArrayList记录列表;
私有列表视图记录列表视图;
私有最终字符串日志\u TAG=“FoundFragment”;
私有记录sListAdapter记录sListAdapter;
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
}//结束一次创建
//----------------------------------------------------------------------------------//
@凌驾
创建视图上的公共视图(更平坦的充气机,
视图组容器,捆绑包savedInstanceState){
//最后两个参数确保LayoutParams正确膨胀。
视图根视图=充气机。充气(
R.layout.frag_发现,容器,假);
返回rootView;
}//EndOnCreateView
//------------------------------------------------------------------------------------//
@凌驾
已创建视图上的公共void(视图,@Nullable Bundle savedInstanceState){
super.onViewCreated(视图,savedInstanceState);
recordsListView=(ListView)getView().findViewById(R.id.foundRecordsListView);
}
//------------------------------------------------------------------------------------//
@凌驾
ActivityCreated上的公共无效(@Nullable Bundle savedinStateCState){
super.onActivityCreated(savedInstanceState);
新建RecordsLoaderTask().execute(false);
}
//------------------------------------------------------------------------------------//
@凌驾
恢复时公开作废(){
super.onResume();
if(recordsListAdapter!=null){
recordsListAdapter.notifyDataSetChanged();
}
}
/********************************************************************/
@抑制警告(“未选中”)
@凌驾
公共void onDataRetrievalSucceeded(检索到的对象数据){
Log.d(“FoundFragment”,“数组的长度为”
+((ArrayList)dataRetrieved).size());
recordsList=(ArrayList)检索到的数据;
recordsListAdapter=新的recordsListAdapter(getActivity(),recordsList);
setAdapter(recordsListAdapter);
Log.e(Log_标记,“AdapterFlist是”+recordsListView.getAdapter()+“\n”+
“长度为”+recordsListView.getAdapter().getCount());
//在这里检查
if(recordsListAdapter!=null){
recordsListAdapter.notifyDataSetChanged();
}
}//结束OnDataRetrievalSucceed
}//末端片段
适配器:

private class RecordsListAdapter extends BaseAdapter{

    private LayoutInflater mInflater;
    private ArrayList<Record> recsList;
    //--------------------------------------------------------------------//        
    public RecordsListAdapter(Context context, ArrayList<Record> records) {
        // Cache the LayoutInflate to avoid asking for a new one each time.
        System.out.println("in constructor of adaapter");
        mInflater = LayoutInflater.from(context);
        recsList = records;
    }
    //--------------------------------------------------------------------//
    @Override
    public int getCount() {
        Log.d(LOG_TAG, "categories adapter get size = " + recsList.size());
        return recsList.size();
    }
    //--------------------------------------------------------------------//
    @Override
    public Object getItem(int position) {
        return recsList.get(position);
    }
    //--------------------------------------------------------------------//
    @Override
    public long getItemId(int position) {
        return position;
    }
    //--------------------------------------------------------------------//
     @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ViewHolder holder;
        if (convertView == null){
            convertView = mInflater.inflate(R.layout.records_list_item, parent, false);
            holder = new ViewHolder();
            holder.name = (TextView) convertView.findViewById(R.id.recordItemNameTxtView);
            holder.age  = (TextView) convertView.findViewById(R.id.recordItemAgeTxtView);
            holder.img = (CircularImageView) convertView.findViewById(R.id.recordItemImgView);

        convertView.setTag(holder);
        }//end if 
        else{
            holder = (ViewHolder) convertView.getTag();
        }

        Record curRecord = recsList.get(position);
        /*setting data from the item into the fields*/;
        holder.name.setText(curRecord.getName());
        holder.age.setText(curRecord.getAge());
        Log.d(LOG_TAG, "curRecord image link is " + curRecord.getThumbURL());
        //TODO image download
        /*if(curRecord.getThumbURL() != null && !curRecord.getThumbURL().equals("")
                && !curRecord.getThumbURL().equals("null")){
            Log.d(LOG_TAG, "in if b4 download image");
            holder.img.setImageBitmap(
                    ImageDownloader.DownloadImage(curRecord.getThumbURL()));

            progressDialog.cancel();
            System.out.println("after image download");
        }//end if --> imag link is available
        else{
            System.out.println("image link is not available");
        }*/
        Log.w(LOG_TAG, "convertView " + 
        convertView + ", " + ((ViewHolder)convertView.getTag()).name.getText().toString());
        return convertView;
    }//end method getView
    ////////////////////////////////////////////////////////////////////////////////////
     class ViewHolder{
        TextView name;
        TextView age;
        CircularImageView img;
    }


}//end class RecordsListAdapter
私有类RecordsListAdapter扩展BaseAdapter{
私人停车场;
私人ArrayList recsList;
//--------------------------------------------------------------------//        
public RecordsListAdapter(上下文、ArrayList记录){
//缓存LayoutFlate以避免每次请求新的LayoutFlate。
System.out.println(“Adapter的构造函数中”);
mInflater=LayoutInflater.from(上下文);
记录列表=记录;
}
//--------------------------------------------------------------------//
@凌驾
public int getCount(){
Log.d(Log_标记,“categories adapter get size=“+recsList.size());
返回recsList.size();
}
//--------------------------------------------------------------------//
@凌驾
公共对象getItem(int位置){
返回recsList.get(位置);
}
//--------------------------------------------------------------------//
@凌驾
公共长getItemId(int位置){
返回位置;
}
//--------------------------------------------------------------------//
@凌驾
公共视图getView(int位置、视图转换视图、视图组父视图){
视窗座;
if(convertView==null){
convertView=mInflater.充气(R.layout.records\u list\u项,父项,false);
holder=新的ViewHolder();
holder.name=(TextView)convertView.findViewById(R.id.recordItemNameTxtView);
holder.age=(TextView)convertView.findViewById(R.id.RecordItemAgeTView);
holder.img=(CircularImageView)convertView.findViewById(R.id.recordItemImgView);
convertView.setTag(支架);
}//如果结束
否则{
holder=(ViewHolder)convertView.getTag();
}
记录curRecord=recsList.get(位置);
/*将数据从项目设置到字段*/;
holder.name.setText(curRecord.getName());
holder.age.setText(currencord.getAge());
d(Log_标记,“curRecord图像链接为”+curRecord.getThumbURL());
//TODO图像下载
/*如果(curRecord.getthumbull()!=null&&!curRecord.getthumbull().equals(“”)
&&!curRecord.getThumbURL().equals(“null”)){
Log.d(Log_标签,“如果b4下载图像中”);
holder.img.setImageBitmap(
下载图像(curRecord.getThumbURL());
progressDialog.cancel();
System.out.println(“图像下载后”);
}//如果-->imag链接可用,则结束
否则{
System.out.println(“图像链接不可用”);
}*/
Log.w(Log_标记,“convertView”+
convertView+“,”+((ViewHolder)convertView.getTag()).name.getText().toString());
返回视图;
}//结束方法getView
////////////////////////////////////////////////////////////////////////////////////
类视图持有者{
文本视图名称;
文本视图年龄;
循环图像成像;
}
}//端类记录适配器
XML:


将充气机管路更改为

convertView = inflater.inflate(R.layout.records_list_item, null);

最有可能发生的是您的
适配器
,它(首先)是在
onActivityC中创建的
convertView = inflater.inflate(R.layout.records_list_item, null);