Retrofit library
0)build.gradle(module:app)
1) MainActivity.java
2) pojo.java
3) JsonAdapter.java
4) Api.java (interface)
5) MainActivity.xml
6) single.xml
dependencies {
//noinspection GradleCompatible
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.1'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation 'com.squareup.picasso:picasso:2.71828'
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
}
MainActivity.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.example.dixit.jsonparsingretrofit.MainActivity">
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/id_listview"></ListView>
</LinearLayout>
MainActivity.java
package com.example.dixit.jsonparsingretrofit;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ListView;
import com.google.gson.Gson;
import java.util.ArrayList;
import java.util.List;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory;
public class MainActivity extends AppCompatActivity {
ListView lv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv = findViewById(R.id.id_listview);
getHeros();
}
private void getHeros() {
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(Api.BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
Api api=retrofit.create(Api.class);
Call<List<pojo>> call=api.GetHeroes();
call.enqueue(new Callback<List<pojo>>() {
@Override
public void onResponse(Call<List<pojo>> call, Response<List<pojo>> response) {
List<pojo> pojolist=response.body();
ArrayList<pojo> arrayList=new ArrayList<>();
for (int i=0;i<pojolist.size();i++)
{
pojo p=new pojo();
// name: "Captain America",
// realname: "Steve Rogers",
// team: "Avengers",
// firstappearance: "1941",
// createdby: "Joe Simon",
// publisher: "Marvel Comics",
// imageurl: "https://www.simplifiedcoding.net/demos/marvel/captainamerica.jpg",
// bio: " Steven
p.setName(pojolist.get(i).getName());
p.setRealname(pojolist.get(i).getRealname());
p.setTeam(pojolist.get(i).getTeam());
p.setFirstappearance(pojolist.get(i).getFirstappearance());
p.setCreatedby(pojolist.get(i).getCreatedby());
p.setPublisher(pojolist.get(i).getPublisher());
p.setImageurl(pojolist.get(i).getImageurl());
p.setBio(pojolist.get(i).getBio());
arrayList.add(p);
}
jsonAdapter adapter=new jsonAdapter(MainActivity.this,arrayList);
lv.setAdapter(adapter);
}
@Override
public void onFailure(Call<List<pojo>> call, Throwable t) {
}
});
}
}
pojo.java
package com.example.dixit.jsonparsingretrofit;
/**
* Created by dixit on 11-Jun-18.
*/
public class pojo {
// name: "Captain America",
// realname: "Steve Rogers",
// team: "Avengers",
// firstappearance: "1941",
// createdby: "Joe Simon",
// publisher: "Marvel Comics",
// imageurl: "https://www.simplifiedcoding.net/demos/marvel/captainamerica.jpg",
// bio: " Steven
private String name;
private String realname;
private String team;
public String getTeam() {
return team;
}
public void setTeam(String team) {
this.team = team;
}
private String firstappearance;
private String createdby;
private String publisher;
private String imageurl;
private String bio;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getRealname() {
return realname;
}
public void setRealname(String realname) {
this.realname = realname;
}
public String getFirstappearance() {
return firstappearance;
}
public void setFirstappearance(String firstappearance) {
this.firstappearance = firstappearance;
}
public String getCreatedby() {
return createdby;
}
public void setCreatedby(String createdby) {
this.createdby = createdby;
}
public String getPublisher() {
return publisher;
}
public void setPublisher(String publisher) {
this.publisher = publisher;
}
public String getImageurl() {
return imageurl;
}
public void setImageurl(String imageurl) {
this.imageurl = imageurl;
}
public String getBio() {
return bio;
}
public void setBio(String bio) {
this.bio = bio;
}
}
JsonAdapter.java
package com.example.dixit.jsonparsingretrofit;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import com.squareup.picasso.Picasso;
import java.util.ArrayList;
import java.util.List;
/**
* Created by dixit on 11-Jun-18.
*/
class jsonAdapter extends BaseAdapter{
Context context;
ArrayList<pojo> arrayList=new ArrayList<>();
public jsonAdapter(Context context, ArrayList<pojo> arrayList) {
this.context = context;
this.arrayList = arrayList;
}
@Override
public int getCount() {
return arrayList.size();
}
@Override
public Object getItem(int i) {
return null;
}
@Override
public long getItemId(int i) {
return 0;
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
LayoutInflater inflater= (LayoutInflater) context.getSystemService(context.LAYOUT_INFLATER_SERVICE);
View v=inflater.inflate(R.layout.single,null);
ImageView imageView;
TextView textView;
imageView=v.findViewById(R.id.id_imageview);
textView=v.findViewById(R.id.id_textview);
pojo p=arrayList.get(i);
textView.setText(p.getName() +"\n"+ p.getRealname() +"\n"+ p.getTeam() +"\n"+ p.getFirstappearance() +"\n"+ p.getCreatedby() +"\n"+ p.getPublisher() +"\n"+ p.getBio());
Picasso.get().load(p.getImageurl()).into(imageView);
return v;
}
}
Api.java (interface)
package com.example.dixit.jsonparsingretrofit;
import java.util.List;
import retrofit2.Call;
import retrofit2.http.GET;
/**
* Created by dixit on 11-Jun-18.
*/
public interface Api {
String BASE_URL = "https://simplifiedcoding.net/demos/";
@GET("marvel")
Call<List<pojo>> GetHeroes();
}
single.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/id_imageview"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/id_textview"/>
</LinearLayout>
1) MainActivity.java
2) pojo.java
3) JsonAdapter.java
4) Api.java (interface)
5) MainActivity.xml
6) single.xml
dependencies {
//noinspection GradleCompatible
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.1'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation 'com.squareup.picasso:picasso:2.71828'
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
}
MainActivity.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.example.dixit.jsonparsingretrofit.MainActivity">
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/id_listview"></ListView>
</LinearLayout>
MainActivity.java
package com.example.dixit.jsonparsingretrofit;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ListView;
import com.google.gson.Gson;
import java.util.ArrayList;
import java.util.List;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory;
public class MainActivity extends AppCompatActivity {
ListView lv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv = findViewById(R.id.id_listview);
getHeros();
}
private void getHeros() {
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(Api.BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
Api api=retrofit.create(Api.class);
Call<List<pojo>> call=api.GetHeroes();
call.enqueue(new Callback<List<pojo>>() {
@Override
public void onResponse(Call<List<pojo>> call, Response<List<pojo>> response) {
List<pojo> pojolist=response.body();
ArrayList<pojo> arrayList=new ArrayList<>();
for (int i=0;i<pojolist.size();i++)
{
pojo p=new pojo();
// name: "Captain America",
// realname: "Steve Rogers",
// team: "Avengers",
// firstappearance: "1941",
// createdby: "Joe Simon",
// publisher: "Marvel Comics",
// imageurl: "https://www.simplifiedcoding.net/demos/marvel/captainamerica.jpg",
// bio: " Steven
p.setName(pojolist.get(i).getName());
p.setRealname(pojolist.get(i).getRealname());
p.setTeam(pojolist.get(i).getTeam());
p.setFirstappearance(pojolist.get(i).getFirstappearance());
p.setCreatedby(pojolist.get(i).getCreatedby());
p.setPublisher(pojolist.get(i).getPublisher());
p.setImageurl(pojolist.get(i).getImageurl());
p.setBio(pojolist.get(i).getBio());
arrayList.add(p);
}
jsonAdapter adapter=new jsonAdapter(MainActivity.this,arrayList);
lv.setAdapter(adapter);
}
@Override
public void onFailure(Call<List<pojo>> call, Throwable t) {
}
});
}
}
pojo.java
package com.example.dixit.jsonparsingretrofit;
/**
* Created by dixit on 11-Jun-18.
*/
public class pojo {
// name: "Captain America",
// realname: "Steve Rogers",
// team: "Avengers",
// firstappearance: "1941",
// createdby: "Joe Simon",
// publisher: "Marvel Comics",
// imageurl: "https://www.simplifiedcoding.net/demos/marvel/captainamerica.jpg",
// bio: " Steven
private String name;
private String realname;
private String team;
public String getTeam() {
return team;
}
public void setTeam(String team) {
this.team = team;
}
private String firstappearance;
private String createdby;
private String publisher;
private String imageurl;
private String bio;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getRealname() {
return realname;
}
public void setRealname(String realname) {
this.realname = realname;
}
public String getFirstappearance() {
return firstappearance;
}
public void setFirstappearance(String firstappearance) {
this.firstappearance = firstappearance;
}
public String getCreatedby() {
return createdby;
}
public void setCreatedby(String createdby) {
this.createdby = createdby;
}
public String getPublisher() {
return publisher;
}
public void setPublisher(String publisher) {
this.publisher = publisher;
}
public String getImageurl() {
return imageurl;
}
public void setImageurl(String imageurl) {
this.imageurl = imageurl;
}
public String getBio() {
return bio;
}
public void setBio(String bio) {
this.bio = bio;
}
}
JsonAdapter.java
package com.example.dixit.jsonparsingretrofit;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import com.squareup.picasso.Picasso;
import java.util.ArrayList;
import java.util.List;
/**
* Created by dixit on 11-Jun-18.
*/
class jsonAdapter extends BaseAdapter{
Context context;
ArrayList<pojo> arrayList=new ArrayList<>();
public jsonAdapter(Context context, ArrayList<pojo> arrayList) {
this.context = context;
this.arrayList = arrayList;
}
@Override
public int getCount() {
return arrayList.size();
}
@Override
public Object getItem(int i) {
return null;
}
@Override
public long getItemId(int i) {
return 0;
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
LayoutInflater inflater= (LayoutInflater) context.getSystemService(context.LAYOUT_INFLATER_SERVICE);
View v=inflater.inflate(R.layout.single,null);
ImageView imageView;
TextView textView;
imageView=v.findViewById(R.id.id_imageview);
textView=v.findViewById(R.id.id_textview);
pojo p=arrayList.get(i);
textView.setText(p.getName() +"\n"+ p.getRealname() +"\n"+ p.getTeam() +"\n"+ p.getFirstappearance() +"\n"+ p.getCreatedby() +"\n"+ p.getPublisher() +"\n"+ p.getBio());
Picasso.get().load(p.getImageurl()).into(imageView);
return v;
}
}
Api.java (interface)
package com.example.dixit.jsonparsingretrofit;
import java.util.List;
import retrofit2.Call;
import retrofit2.http.GET;
/**
* Created by dixit on 11-Jun-18.
*/
public interface Api {
String BASE_URL = "https://simplifiedcoding.net/demos/";
@GET("marvel")
Call<List<pojo>> GetHeroes();
}
single.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/id_imageview"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/id_textview"/>
</LinearLayout>
Comments
Post a Comment