Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android:如何检测是否加载了所有ListView对象_Java_Android_Listview_Footer_Parse Platform - Fatal编程技术网

Java Android:如何检测是否加载了所有ListView对象

Java Android:如何检测是否加载了所有ListView对象,java,android,listview,footer,parse-platform,Java,Android,Listview,Footer,Parse Platform,近一周来,我一直在想(没有成功)如何检测所有ListView对象(行)是否已加载。我的ListView是LoadMore类型(我已经将限制设置为5行,所以每5行加载5行)。我正在使用Parse.com框架。当整个列表加载后,我想删除页脚视图。有关更多信息,请参阅下面的代码 你有什么想法或建议,如何实现它 提前谢谢 public class Fragment1 extends Fragment { private ListView mListView; private Animal

近一周来,我一直在想(没有成功)如何检测所有ListView对象(行)是否已加载。我的ListView是LoadMore类型(我已经将限制设置为5行,所以每5行加载5行)。我正在使用Parse.com框架。当整个列表加载后,我想删除页脚视图。有关更多信息,请参阅下面的代码

你有什么想法或建议,如何实现它

提前谢谢

public class Fragment1 extends Fragment {
    private ListView mListView;
    private AnimalAdapter mAdapter;
    ProgressBar mProgressBar;
    EditText mEditText;
    RelativeLayout mRelativeLayout;
    ProgressBar oProgressBar;
    LinearLayout mLinearLayout;
    Context context;
    LayoutInflater inflater;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {

        final View rootView = inflater.inflate(R.layout.animalsfrag, container, false);
        mListView = (ListView)rootView.findViewById(R.id.animal_list);

        View header = getActivity().getLayoutInflater().inflate(R.layout.header, null);
        header.setPadding(2, 8, 4, 2);


        mListView.setVisibility(View.INVISIBLE);
        mListView.requestFocus();
        mListView.addHeaderView(header);
        View footer = getActivity().getLayoutInflater().inflate(R.layout.footer, null);
        mListView.addFooterView(footer);
        footer.setVisibility(View.VISIBLE);


        mProgressBar = (ProgressBar) rootView.findViewById (R.id.loading_animals);
        mProgressBar.setVisibility(View.VISIBLE);

        RemoteDataTask task = new RemoteDataTask();
        task.execute();





    return rootView;
    }





     public void updateData() { //Main area no.1
         mListView = (ListView)getView().findViewById(R.id.animal_list);
         int limit = mListView.getCount() + 5;
         ParseQuery<Animal> query = ParseQuery.getQuery(Animal.class);


      query.setCachePolicy(CachePolicy.CACHE_THEN_NETWORK);
    query.orderByAscending("animal");
    query.setLimit(limit);

       Toast.makeText(getActivity(), "now", Toast.LENGTH_SHORT).show();



    query.findInBackground(new FindCallback<Animal>() {


        @Override
          public void done(List<Animal> animals, ParseException error) {

              if(animals != null){
                  mAdapter.clear();

               mProgressBar.setVisibility(View.INVISIBLE);
              for (int i = 0; i < animals.size(); i++) {

                      mAdapter.add(animals.get(i));



                  }


              }



          }


      });

    }

     private class RemoteDataTask extends AsyncTask<Void, Void, Void> {




         @Override
            protected void onPreExecute() {
                super.onPreExecute();






            }


         @Override
            protected Void doInBackground(Void... params) {


                    updateData();




                return null;
            }


         @Override
            protected void onPostExecute(Void result) {

               mListView = (ListView) getView().findViewById(R.id.animal_list);
                // Pass the results into ListViewAdapter.java
               mAdapter = new AnimalAdapter(getActivity(), new ArrayList<Animal>());
               mListView.setAdapter(mAdapter);




               mListView.setVisibility(View.VISIBLE);
               mListView.setTextFilterEnabled(true);



                mListView.setAdapter(mAdapter);
                mAdapter = new AnimalAdapter(getActivity(), new ArrayList<Animal>());
                mListView = (ListView) getView().findViewById(R.id.animal_list);
                mAdapter = new AnimalAdapter(getActivity(), new ArrayList<Animal>());
                mListView.setAdapter(mAdapter);


                 mListView.setAdapter(mAdapter);
                mEditText = (EditText) getView().findViewById(R.id.search_animal);

                mListView.setOnScrollListener(new OnScrollListener() {



                    @Override //Main area no.2
                    public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount,
                            int totalItemCount) {
                         final int lastItem = firstVisibleItem + visibleItemCount;



                           if(lastItem == totalItemCount) {
                                updateData();



                           }



                        mListView.setFooterDividersEnabled(false);
                    }

                    @Override
                    public void onScrollStateChanged(AbsListView view,
                            int scrollState) {
                        if (SCROLL_STATE_TOUCH_SCROLL == scrollState) {
                            View currentFocus = getActivity().getCurrentFocus();
                            if(currentFocus != null) {
                                currentFocus.clearFocus();
                            }

                            mEditText = (EditText) getActivity().findViewById(R.id.search_animal);
                            InputMethodManager imm = (InputMethodManager)getActivity().getSystemService(
                                      Context.INPUT_METHOD_SERVICE);
                                imm.hideSoftInputFromWindow(mEditText.getWindowToken(), 0);




                            }

                    }

                });

                mEditText.addTextChangedListener(new TextWatcher(){

                    @Override
                    public void afterTextChanged(Editable s) {


                    }

                    @Override
                    public void beforeTextChanged(CharSequence s,
                            int start, int count, int after) {


                    }

                    @Override
                    public void onTextChanged(CharSequence s, int start,
                            int before, int count) {

                        System.out.println("Text ["+s+"]");
                        mAdapter.getFilter().filter(s.toString());



                    }
                });


                  }

         }


}
公共类Fragment1扩展了Fragment{
私有列表视图;
私人动物适应学校;
ProgressBar-mProgressBar;
EditText-mEditText;
相对布局;
ProgressBar oProgressBar;
线性布局;
语境;
充气机;
@凌驾
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
最终视图根视图=充气机。充气(R.layout.animalfrag,container,false);
mListView=(ListView)rootView.findViewById(R.id.animal_列表);
视图标题=getActivity().GetLayoutFlater().inflate(R.layout.header,null);
标题。设置填充(2,8,4,2);
mListView.setVisibility(View.INVISIBLE);
mListView.requestFocus();
mListView.addHeaderView(标题);
视图页脚=getActivity().GetLayoutFlater().inflate(R.layout.footer,null);
mListView.addFooterView(页脚);
footer.setVisibility(View.VISIBLE);
mProgressBar=(ProgressBar)rootView.findviewbyd(R.id.loading\u动物);
mProgressBar.setVisibility(View.VISIBLE);
RemoteDataTask任务=新的RemoteDataTask();
task.execute();
返回rootView;
}
公共无效更新数据(){//主区域1号
mListView=(ListView)getView().findViewById(R.id.animal_列表);
int limit=mListView.getCount()+5;
ParseQuery=ParseQuery.getQuery(Animal.class);
setCachePolicy(CachePolicy.CACHE\u然后\u网络);
查询:orderByAscending(“动物”);
query.setLimit(limit);
Toast.makeText(getActivity(),“now”,Toast.LENGTH_SHORT.show();
findInBackground(新的FindCallback(){
@凌驾
公共作废完成(列出动物,ParseException错误){
如果(动物!=null){
mAdapter.clear();
mProgressBar.setVisibility(视图.不可见);
对于(int i=0;i