1.VolleySingleton
package abhiandroid.com.uitest;
import android.content.Context;
import com.android.volley.RequestQueue;
import com.android.volley.toolbox.Volley;
public class VolleySingleton {
private RequestQueue requestQueue;
private static VolleySingleton mInstance;
private VolleySingleton(Context context){
requestQueue = Volley.newRequestQueue(context.getApplicationContext());
}
public static synchronized VolleySingleton getmInstance(Context context){
if (mInstance == null){
mInstance = new VolleySingleton(context);
}
return mInstance;
}
public RequestQueue getRequestQueue(){return requestQueue;}
}
2.
package abhiandroid.com.uitest;
import androidx.appcompat.app.AppCompatActivity;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentTransaction;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.JsonArrayRequest;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity {
private RecyclerView recyclerView;
private RequestQueue requestQueue;
private List<Movie> movieList;
Button button;
String strJson="{ \"Employee\" :[{\"id\":\"101\",\"name\":\"Sonoo Jaiswal\",\"salary\":\"50000\"},{\"id\":\"102\",\"name\":\"Vimal Jaiswal\",\"salary\":\"60000\"}] }";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = findViewById(R.id.button);
//D
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Fragment fragment = new BlankFragment();
// FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
// fragmentTransaction.replace(R.id.ff,fragment).commit();
getSupportFragmentManager().beginTransaction().add(R.id.ff,new BlankFragment()).commit();
}
});
recyclerView = findViewById(R.id.recyclerview);
recyclerView.setHasFixedSize(true);
// recyclerView.setLayoutManager(new LinearLayoutManager(this));
requestQueue = VolleySingleton.getmInstance(this).getRequestQueue();
movieList = new ArrayList<>();
fetchMovies();
//grid view
GridLayoutManager GLM = new GridLayoutManager(this,2);
recyclerView.setLayoutManager(GLM);
Log.d("json","Max"+strJson);
}
private void fetchMovies() {
String url = "https://run.mocky.io/v3/2b74ab88-9332-4302-8153-643405a49230";
JsonArrayRequest jsonArrayRequest = new JsonArrayRequest(Request.Method.GET, url, null,
new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
for (int i = 0; i < response.length(); i++) {
try {
JSONObject jsonObject = response.getJSONObject(i);
String name = jsonObject.getString("name");
String image = jsonObject.getString("image");
String contact = jsonObject.getString("contact");
// Toast.makeText(MainActivity.this,"hi"+name,Toast.LENGTH_LONG).show();
Log.d("sys", "jus" + contact);
// Log.d("Tag","app"+ contact.toString());
Movie movie = new Movie(contact, image);
movieList.add(movie);
} catch (JSONException e) {
e.printStackTrace();
}
MovieAdapter adapter = new MovieAdapter(MainActivity.this, movieList);
recyclerView.setAdapter(adapter);
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(MainActivity.this, error.getMessage(), Toast.LENGTH_SHORT).show();
}
});
requestQueue.add(jsonArrayRequest);
}
}
3.
package abhiandroid.com.uitest;
public class Movie {
private String name,image ;
public Movie(String name, String image){
this.name = name;
this.image = image;
// this.poster = poster;
// this.overview = overview;
//this.rating = rating;
}
public String getName() {
return name;
}
public String getImage() { return image;}
//public String getOverview() {
}
4.
package abhiandroid.com.uitest;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.recyclerview.widget.RecyclerView;
import java.util.List;
public class FragmDAdapter extends RecyclerView.Adapter<FragmDAdapter.MovieHolder> {
private Context context;
private List<FModel> FDList;
public FragmDAdapter(Context context , List<FModel> FDas){
this.context = context;
FDList = FDas;
}
@NonNull
@Override
public MovieHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(context).inflate(R.layout.drow1 , parent , false);
return new MovieHolder(view);
}
@Override
public void onBindViewHolder(@NonNull MovieHolder holder, int position) {
FModel movie = FDList.get(position);
// holder.rating.setText(movie.getRating().toString());
holder.title.setText(movie.getName());
// holder.overview.setText(movie.getOverview());
// Glide.with(context).load( "https://www.fastdeliveryind.com/admin/uploads/products/"+movie.getImage()).into(holder.imageView);
/* holder.title.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(context , DetailActivity.class);
Bundle bundle = new Bundle();
bundle.putString("name" , movie.getName());
// bundle.putString("overview" , movie.getOverview());
// bundle.putString("poster" , movie.getPoster());
// bundle.putDouble("rating" , movie.getRating());
intent.putExtras(bundle);
context.startActivity(intent);
}
}); */
}
@Override
public int getItemCount() {
return FDList.size();
}
public class MovieHolder extends RecyclerView.ViewHolder{
// ImageView imageView;
TextView title , overview , rating;
// ConstraintLayout constraintLayout;
public MovieHolder(@NonNull View itemView) {
super(itemView);
//imageView = itemView.findViewById(R.id.imageview);
title = itemView.findViewById(R.id.title_tv);
// overview = itemView.findViewById(R.id.overview_tv);
//rating = itemView.findViewById(R.id.rating);
//constraintLayout = itemView.findViewById(R.id.main_layout);
}
}
}
5.
6.
7.