Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/221.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.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
Android 在从json解析数据时,如何在列表视图中使用分页?_Android - Fatal编程技术网

Android 在从json解析数据时,如何在列表视图中使用分页?

Android 在从json解析数据时,如何在列表视图中使用分页?,android,Android,在从json解析数据时,如何在列表视图中使用分页? 我使用json从url中删除数据,但现在我想在按钮上进行分页,单击url页码。更改为2,数据再次删除。我如何才能做到这一点?我的json工作代码如下所示- public class FirstFragment extends Fragment { public AfricaFragment(){} private static final String TAG = FirstFragment.class.getSimpleName(); /

在从json解析数据时,如何在列表视图中使用分页? 我使用json从url中删除数据,但现在我想在按钮上进行分页,单击url页码。更改为2,数据再次删除。我如何才能做到这一点?我的json工作代码如下所示-

public class FirstFragment extends Fragment {

public AfricaFragment(){}
private static final String TAG = FirstFragment.class.getSimpleName();

// Movies json url
private static final String url = "http://urlling&page=1";
private ProgressDialog pDialog;
private List<Movie> movieList = new ArrayList<Movie>();
private ListView listView;
private CustomListAdapter adapter;

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

    final View rootView = inflater.inflate(R.layout.activity_main, container, false);

    listView = (ListView) rootView.findViewById(R.id.list);
    listView.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?>  adapterView, View view, int Position,
                long offset)  { 
            // TODO Auto-generated method stub
            Movie item = (Movie) adapter.getItem(Position);             
            Intent intent = new Intent(rootView.getContext(), SingleArticle.class);
            single.title = item.getTitle();
            single.author = item.getAuthor();


            startActivity(intent);


            }        
        });

    //pDialog = new ProgressDialog(this);
    // Showing progress dialog before making http request

    return rootView;
 }

@Override
public void onStart(){
    super.onStart();
    // calling adapter changes here, just
    // to avoid getactivity()null

    //adapter = new CustomListAdapter(this, movieList);
    pDialog = new ProgressDialog(getActivity());
    pDialog.setMessage("Loading...");
    pDialog.show();

    // changing action bar color
    //getActivity().getActionBar().setBackground(
            //new ColorDrawable(Color.parseColor("#1b1b1b")));

    // Creating volley request obj
    JsonArrayRequest movieReq = new JsonArrayRequest(url,
            new Response.Listener<JSONArray>() {
                @Override
                public void onResponse(JSONArray response) {
                    Log.d(TAG, response.toString());
                    hidePDialog();

                    // Parsing json
                    for (int i = 0; i < response.length(); i++) {
                        try {

                            JSONObject obj = response.getJSONObject(i);

                            Movie movie = new Movie();
                            movie.setTitle(obj.getString("title"));

                            movie.setAuthor(obj.getString("author"));


                            // adding movie to movies array
                            movieList.add(movie);

                            adapter = new CustomListAdapter(getActivity(), movieList);
                            adapter.notifyDataSetChanged();
                            listView.setAdapter(adapter);

                        } catch (JSONException e) {
                            e.printStackTrace();

                        }

                    }

                }
            },new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {
                    VolleyLog.d(TAG, "Error: " + error.getMessage());
                    new AlertDialog.Builder(getActivity())
                    .setTitle("No Connectivity ")
                    .setMessage("Please chechk your internet connectivity!")
                    .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int which) { 
                            // continue with delete
                        }
                     })
                    //.setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
                        //public void onClick(DialogInterface dialog, int which) { 
                            // do nothing
                        //}
                     //})
                    .setIcon(android.R.drawable.ic_dialog_alert)
                     .show();
                    hidePDialog();

                }
            });
    AppController.getInstance().addToRequestQueue(movieReq);

    listView.setAdapter(adapter);

}

private View getActionBar() {
    // TODO Auto-generated method stub
    return null;
}

@Override
public void onDestroy() {
super.onDestroy();
hidePDialog();
}

private void hidePDialog() {
if (pDialog != null) {
    pDialog.dismiss();
    pDialog = null;
}
}

}
public类FirstFragment扩展了Fragment{
公共非洲碎片({}
私有静态最终字符串标记=FirstFragment.class.getSimpleName();
//电影json url
私有静态最终字符串url=”http://urlling&page=1";
私人对话;
private List movieList=new ArrayList();
私有列表视图列表视图;
专用自定义列表适配器;
@凌驾
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
最终视图根视图=充气机。充气(R.layout.activity_main,容器,假);
listView=(listView)rootView.findViewById(R.id.list);
setOnItemClickListener(新的OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView AdapterView、View视图、int位置、,
长偏移量){
//TODO自动生成的方法存根
电影项目=(电影)适配器.getItem(位置);
Intent Intent=new Intent(rootView.getContext(),SingleArticle.class);
single.title=item.getTitle();
single.author=item.getAuthor();
星触觉(意向);
}        
});
//pDialog=新建进度对话框(此对话框);
//在发出http请求之前显示进度对话框
返回rootView;
}
@凌驾
public void onStart(){
super.onStart();
//在这里调用适配器更改,只需
//要避免getactivity()为null
//adapter=新的CustomListAdapter(此,movieList);
pDialog=newprogressdialog(getActivity());
设置消息(“加载…”);
pDialog.show();
//更改操作栏颜色
//getActivity().getActionBar().setBackground(
//新的可着色(Color.parseColor(#1b1b1b”);
//创建截击请求对象
JsonArrayRequest movieReq=新的JsonArrayRequest(url,
新的Response.Listener(){
@凌驾
公共void onResponse(JSONArray响应){
Log.d(TAG,response.toString());
hidePDialog();
//解析json
对于(int i=0;i
您可以在列表视图的滚动端调用另一个请求。Ref:在片段活动中解析数据时,如何在片段中实现这一点?在片段中创建一个方法parseandSetData(),并调用fragmentInstance.parseandSetData(resultList);将其附加到现有列表中,并为适配器更改nottifydatasetchanged