私はRecyclerViewAdapter
を使用しています。それは完全に機能しています。RecyclerViewAdapterのデータを更新できませんでした
サーバーからリストを作成しようとしているときに問題が発生します。
マイDataHandaling
クラス、私はビュー
(NOTEをリフレッシュするために、ここでメソッドを持っています
void getEvents() {
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url(enviroClass.url() + "/api/events/" + 7)
.build();
client.newCall(request)
.enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
}
@Override
public void onResponse(Call call, Response response) throws IOException {
try {
JSONObject eventObject = new JSONObject(response.body().string());
JSONArray eventJsonArray = eventObject.getJSONArray("events");
System.out.println(eventJsonArray.length());
for (int i = 0; i<2; i++) {
eventObject = eventJsonArray.getJSONObject(i);
eventObject = eventObject.getJSONObject("event");
eventArray.add(new Object_Event(eventObject.getString("name"), eventObject.getString("address"), eventObject.getString("image"), "100" ,eventObject.getString("start_date"), eventObject.getString("end_date"), eventObject.getInt("id")));
}
System.out.println("This is from the http request in the datahandeling class" + "\n" + eventArray.get(0).getName());
} catch (JSONException e) {
e.printStackTrace();
}
}
});
}
Adapter Class
...ここからリストビューをリフレッシュする配列を取得しようとしています :私はそれを試すことができないため、スワップメソッドが動作するかどうかは分かりません。)
Fragment
クラス
は(NOTE:それは最初にリストビューを移入んので、これが正しく行われるべき)
import android.content.Context;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.widget.GridLayoutManager;
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.TextView;
import com.app.garethbecker.socializer.dummy.DummyContent;
import com.app.garethbecker.socializer.dummy.DummyContent.DummyItem;
import org.w3c.dom.Text;
import java.util.ArrayList;
import static android.R.attr.data;
/**
* A fragment representing a list of Items.
* <p/>
* Activities containing this fragment MUST implement the {@link OnListFragmentInteractionListener}
* interface.
*/
public class EventListFragment extends Fragment {
DataHandaling dh = new DataHandaling();
// TODO: Customize parameter argument names
private static final String ARG_COLUMN_COUNT = "column-count";
// TODO: Customize parameters
private int mColumnCount = 1;
private OnListFragmentInteractionListener mListener;
/**
* Mandatory empty constructor for the fragment manager to instantiate the
* fragment (e.g. upon screen orientation changes).
*/
public EventListFragment() {
}
// TODO: Customize parameter initialization
@SuppressWarnings("unused")
public static EventListFragment newInstance(int columnCount) {
EventListFragment fragment = new EventListFragment();
Bundle args = new Bundle();
args.putInt(ARG_COLUMN_COUNT, columnCount);
fragment.setArguments(args);
return fragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getArguments() != null) {
mColumnCount = getArguments().getInt(ARG_COLUMN_COUNT);
}
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_item_list, container, false);
// Set the adapter
if (view instanceof RecyclerView) {
Context context = view.getContext();
RecyclerView recyclerView = (RecyclerView) view;
if (mColumnCount <= 1) {
recyclerView.setLayoutManager(new LinearLayoutManager(context));
} else {
recyclerView.setLayoutManager(new GridLayoutManager(context, mColumnCount));
}
recyclerView.setAdapter(new MyItemRecyclerViewAdapter(dh.getEventArray(), mListener));
}
return view;
}
@Override
public void onAttach(Context context) {
super.onAttach(context);
if (context instanceof OnListFragmentInteractionListener) {
mListener = (OnListFragmentInteractionListener) context;
} else {
throw new RuntimeException(context.toString()
+ " must implement OnListFragmentInteractionListener");
}
}
@Override
public void onDetach() {
super.onDetach();
mListener = null;
}
/**
* This interface must be implemented by activities that contain this
* fragment to allow an interaction in this fragment to be communicated
* to the activity and potentially other fragments contained in that
* activity.
* <p/>
* See the Android Training lesson <a href=
* "http://developer.android.com/training/basics/fragments/communicating.html"
* >Communicating with Other Fragments</a> for more information.
*/
public interface OnListFragmentInteractionListener {
// TODO: Update argument type and name
void onListFragmentInteraction(int item);
}
私は(リフレッシュリスト)にしてみてください、私は失敗していますserver.whereからフェッチデータをリフレッシュ悲惨に。
誰でも手伝ってもらえますか?ありがとう。
せずにスワップメソッドを呼び出した私は、スワップ方法でそれをした、しかし、私はデータhadalingからそれを呼び出す方法を見当がつかない??? – TheMysticalWarrior