запуск через код
import android.annotation.SuppressLint; import android.content.Context; import android.content.Intent; import android.support.annotation.NonNull; import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; import java.util.ArrayList; import java.util.List; public class RVAdapter extends RecyclerView.Adapter<RVAdapter.ItemViewHolder> { private final List<Person> mItems; public RVAdapter(ArrayList<Person> mItems) { this.mItems = mItems; } public class ItemViewHolder extends RecyclerView.ViewHolder { public final TextView mTextView; private final TextView textContent; ItemViewHolder(@NonNull View itemView) { super(itemView); mTextView = itemView.findViewById(R.id.list_item); textContent= itemView.findViewById(R.id.textContent); } } @SuppressLint("RecyclerView") @Override public void onBindViewHolder(@NonNull ItemViewHolder itemViewHolder, final int position) { //noinspection deprecation itemViewHolder.mTextView.setText(mItems.get(position).name); //noinspection deprecation itemViewHolder.textContent.setText(mItems.get( position).textContent ); itemViewHolder.itemView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(@NonNull View v) { Context context= v.getContext(); Intent i = new Intent(context,JsonActivity.class); i.putExtra("text",(mItems.get(position).textContent)); // put image data in Intent context.startActivity(i); // start Intent } });} @NonNull @Override public ItemViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) { View view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.list_row, viewGroup, false); return new ItemViewHolder(view); } @Override public int getItemCount() { return mItems.size(); }
код обработки
import android.app.Activity; import android.app.ProgressDialog; import android.os.Bundle; import android.text.Html; import android.widget.TextView; import com.android.volley.Request.Method; import com.android.volley.Response; import com.android.volley.VolleyError; import com.android.volley.toolbox.JsonObjectRequest; import org.json.JSONObject; public class JsonActivity extends Activity { //String s=null; ProgressDialog PD; TextView tv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Bundle extras = getIntent().getExtras(); // get Intent which we set from Previous Activity String s = extras != null ? extras.getString( "text" ) : null; setContentView(R.layout.activity_json); tv = (TextView) findViewById(R.id.tv); PD = new ProgressDialog(this); PD.setMessage("Loading....."); PD.setCancelable(false); // makejsonobjreq(); //} //private void makejsonobjreq() { PD.show(); String url = ("http://proforientator.info/?json=get_page&"+s); JsonObjectRequest jsonObjReq = new JsonObjectRequest(Method.GET, url, null, new Response.Listener<JSONObject>() { @Override public void onResponse(JSONObject response) { JSONObject page = response.optJSONObject("page" ); // String name = page.optString("title"); String region = page.optString("content"); tv.setText(Html.fromHtml(region).toString()); PD.dismiss(); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { PD.dismiss(); } }); MyApplication.getInstance().addToReqQueue(jsonObjReq, "jreq"); } }
строка ошибки
MyApplication.getInstance().addToReqQueue(jsonObjReq, "jreq");
класс куда обращается
import android.annotation.SuppressLint; import android.app.Application; import com.android.volley.Request; import com.android.volley.RequestQueue; import com.android.volley.toolbox.JsonObjectRequest; import com.android.volley.toolbox.Volley; @SuppressLint("Registered") public class MyApplication extends Application { private RequestQueue mRequestQueue; private static MyApplication mInstance; @Override public void onCreate() { super.onCreate(); mInstance = this; } public static synchronized MyApplication getInstance() { return mInstance; } public RequestQueue getReqQueue() { if (mRequestQueue == null) { mRequestQueue = Volley.newRequestQueue(getApplicationContext()); } return mRequestQueue; } public <T> JsonObjectRequest addToReqQueue(Request<T> req, String tag) { getReqQueue().add(req); return null; } public <T> void addToReqQueue(Request<T> req) { getReqQueue().add(req); } public void cancelPendingReq(Object tag) { if (mRequestQueue != null) { mRequestQueue.cancelAll(tag); } } }