First time add below code to your activity_main.xml, here i using name codingsheep.xml for listing ListView in main.
Now create new layout for models of items ListView, item_listmodel.xml.
Create data models Set and Get method String, Like this code CDModel.java.
package com.codingsheep.codingsheep;
/**
* Created by CODING SHEEP on 5/19/2017.
*/
public class CDModels {
private String CodingSheep;
public String getCodingSheep() {
return CodingSheep;
}
public void setCodingSheep(String codingSheep) {
CodingSheep = codingSheep;
}
}
And finally code below add to Your MainActivity, for now i using name CodingSheep.java for my project.
package com.codingsheep.codingsheep;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.Typeface;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.CardView;
import android.support.v7.widget.RecyclerView;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.view.inputmethod.EditorInfo;
import android.view.inputmethod.InputMethodManager;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.Button;
import android.widget.EditText;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.widget.Toast;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
/**
* Created by CODING SHEEP on 05/19/2017.
*/
public class CodingSheep extends AppCompatActivity {
ListView LVcodingsheep;
ProgressBar proccess;
Button getnow;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.codingsheep);
LVcodingsheep = (ListView)findViewById(R.id.codingsheepLV);
getnow = (Button)findViewById(R.id.get);
proccess = (ProgressBar)findViewById(R.id.process);
getnow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new GoJSON().execute("http://aitmbel.org/wp-content/uploads/2017/05/JSON-CODINGSHEEP.txt");
}
});
}
public class GoJSON extends AsyncTask>{
@Override
protected void onPreExecute() {
super.onPreExecute();
proccess.setVisibility(View.VISIBLE);
}
@Override
protected List doInBackground(String... params) {
HttpURLConnection connection = null;
BufferedReader reader = null;
try {
URL url = new URL(params[0]);
connection = (HttpURLConnection) url.openConnection();
connection.connect();
InputStream stream = connection.getInputStream();
reader = new BufferedReader(new InputStreamReader(stream));
StringBuffer buffer = new StringBuffer();
String line = "";
while ((line = reader.readLine()) != null) {
buffer.append(line);
}
String HAStringBuffer = buffer.toString();
List CDList = new ArrayList<>();
JSONArray arayobjek = new JSONArray(HAStringBuffer);
for (int i = 0; i < arayobjek.length(); ++i) {
JSONObject finalobjek = arayobjek.getJSONObject(i);
CDModels Get = new CDModels();
Get.setCodingSheep(finalobjek.getString("codingsheep"));
CDList.add(Get);
}
return CDList;
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
} finally {
if (connection != null) {
connection.disconnect();
}
try {
if (reader != null) {
reader.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return null;
}
@Override
protected void onPostExecute(final List result) {
super.onPostExecute(result);
proccess.setVisibility(View.GONE);
if (result != null) {
CODINGSHEEPAdapter adapter = new CODINGSHEEPAdapter(CodingSheep.this.getApplicationContext(), R.layout.item_listmodel, result);
LVcodingsheep.setAdapter(adapter);
} else {
Toast.makeText(getApplicationContext(), "Error", Toast.LENGTH_LONG).show();
}
}
}
private class CODINGSHEEPAdapter extends ArrayAdapter {
private List list;
private int resource;
private LayoutInflater inflater;
private CODINGSHEEPAdapter(Context context, int resource, List objects) {
super(context, resource, objects);
list = objects;
this.resource = resource;
inflater = (LayoutInflater)CodingSheep.this.getSystemService(LAYOUT_INFLATER_SERVICE);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
CODINGSHEEPAdapter.ViewHolder holderP = null;
if (convertView == null) {
holderP = new CODINGSHEEPAdapter.ViewHolder();
convertView = inflater.inflate(resource, null);
holderP.Text = (TextView) convertView.findViewById(R.id.text);
convertView.setTag(holderP);
} else {
holderP = (CODINGSHEEPAdapter.ViewHolder) convertView.getTag();
}
holderP.Text.setText(list.get(position).getCodingSheep());
return convertView;
}
class ViewHolder {
private TextView Text;
}
}
}
This Link For Simple JSON txt http://aitmbel.org/wp-content/uploads/2017/05/JSON-CODINGSHEEP.txt
This for JSON preview Object
[
{
"number": "1",
"codingsheep": "Hello Android"
},
{
"number": "2",
"codingsheep": "CodingSheep Android"
},
{
"number": "3",
"codingsheep": "Android Happy Coding"
},
{
"number": "4",
"codingsheep": "Im Is Developers"
},
{
"number": "5",
"codingsheep": "I Like This CodingSheep"
}
]
Good Job :D
How can i get json multiple object, like image
ReplyDeleteSame way to multi object, jusy add new list and key
Deleteyes
DeleteThanks !
ReplyDelete