getdata什么意思java,用java在另一个类中移动getData()方法?

如何在另一个类中移动getData()等方法,以及在此页中调用该类之后移动这些方法?

我试着做点什么,但没用。

你能帮助创建一个新的类吗?

package it.example.app.fragment_2;

import android.content.Context;

import android.net.Uri;

import android.os.Bundle;

import android.support.v4.app.Fragment;

import android.support.v7.widget.LinearLayoutManager;

import android.support.v7.widget.RecyclerView;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

import android.widget.ProgressBar;

import android.widget.Toast;

import com.android.volley.RequestQueue;

import com.android.volley.Response;

import com.android.volley.VolleyError;

import com.android.volley.toolbox.JsonArrayRequest;

import com.android.volley.toolbox.Volley;

import org.json.JSONArray;

import org.json.JSONException;

import org.json.JSONObject;

import java.util.ArrayList;

import java.util.List;

public class Tab1 extends Fragment implements RecyclerView.OnScrollChangeListener {

View v;

private Tab1.OnFragmentInteractionListener mListener;

private List listSuperHeroes;

//Creating Views

private RecyclerView recyclerView;

private RecyclerView.LayoutManager layoutManager;

private RecyclerView.Adapter adapter;

//Volley Request Queue

private RequestQueue requestQueue;

//The request counter to send ?page=1, ?page=2 requests

private int requestCount = 1;

public Tab1() {

// Required empty public constructor

}

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

}

@Override

public View onCreateView(LayoutInflater inflater, ViewGroup container,

Bundle savedInstanceState) {

// Inflate the layout for this fragment

v = inflater.inflate(R.layout.fragment_tab1, container, false);

recyclerView = (RecyclerView) v.findViewById(R.id.recyclerView);

recyclerView.setHasFixedSize(true);

listSuperHeroes = new ArrayList<>();

requestQueue = Volley.newRequestQueue(getContext());

getData();

adapter = new CardAdapter(listSuperHeroes, getContext());

layoutManager = new LinearLayoutManager(getActivity());

recyclerView.setLayoutManager(layoutManager);

recyclerView.setOnScrollChangeListener(this);

recyclerView.setAdapter(adapter);

return v;

}

//This integer will used to specify the page number for the request ?page = requestcount

//This method would return a JsonArrayRequest that will be added to the request queue

private JsonArrayRequest getDataFromServer(int requestCount) {

//Initializing ProgressBar

//final ProgressBar progressBar = (ProgressBar) findViewById(R.id.progressBar1);

//Displaying Progressbar

//progressBar.setVisibility(View.VISIBLE);

//setProgressBarIndeterminateVisibility(true);

//JsonArrayRequest of volley

JsonArrayRequest jsonArrayRequest = new JsonArrayRequest(Config.DATA_URL + String.valueOf(requestCount),

new Response.Listener() {

@Override

public void onResponse(JSONArray response) {

//Calling method parseData to parse the json response

parseData(response);

//Hiding the progressbar

//progressBar.setVisibility(View.GONE);

}

},

new Response.ErrorListener() {

@Override

public void onErrorResponse(VolleyError error) {

// progressBar.setVisibility(View.GONE);

//If an error occurs that means end of the list has reached

// Toast.makeText(Hero_main_activity.this, "No More Items Available", Toast.LENGTH_SHORT).show();

}

});

//Returning the request

return jsonArrayRequest;

}

//This method will get data from the web api

private void getData() {

//Adding the method to the queue by calling the method getDataFromServer

requestQueue.add(getDataFromServer(requestCount));

//Incrementing the request counter

requestCount++;

}

//This method will parse json data

private void parseData(JSONArray array) {

for (int i = 0; i < array.length(); i++) {

//Creating the superhero object

SuperHero superHero = new SuperHero();

JSONObject json = null;

try {

//Getting json

json = array.getJSONObject(i);

//Adding data to the superhero object

superHero.setImageUrl(json.getString(Config.TAG_IMAGE_URL));

superHero.setName(json.getString(Config.TAG_NAME));

superHero.setPublisher(json.getString(Config.TAG_PUBLISHER));

} catch (JSONException e) {

e.printStackTrace();

}

//Adding the superhero object to the list

listSuperHeroes.add(superHero);

}

//Notifying the adapter that data has been added or changed

adapter.notifyDataSetChanged();

}

//This method would check that the recyclerview scroll has reached the bottom or not

private boolean isLastItemDisplaying(RecyclerView recyclerView) {

if (recyclerView.getAdapter().getItemCount() != 0) {

int lastVisibleItemPosition = ((LinearLayoutManager) recyclerView.getLayoutManager()).findLastCompletelyVisibleItemPosition();

if (lastVisibleItemPosition != RecyclerView.NO_POSITION && lastVisibleItemPosition == recyclerView.getAdapter().getItemCount() - 1)

return true;

}

return false;

}

//Overriden method to detect scrolling

@Override

public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {

//Ifscrolled at last then

if (isLastItemDisplaying(recyclerView)) {

//Calling the method getdata again

getData();

}

}

public interface OnFragmentInteractionListener {

// TODO: Update argument type and name

void onFragmentInteraction(Uri uri);

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值