Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import android.support.v7.app.AppCompatActivity;
- import android.os.Bundle;
- import android.content.Intent;
- import android.widget.TextView;
- public class Friend extends AppCompatActivity {
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_friend);
- Intent i = getIntent();
- TextView name = (TextView) findViewById(R.id.textView_name);
- TextView hobby = (TextView) findViewById(R.id.textView_hobby);
- TextView age = (TextView) findViewById(R.id.textView_age);
- TextView phone = (TextView) findViewById(R.id.textView_phone);
- TextView address = (TextView) findViewById(R.id.textView_address);
- name.setText("Name: "+i.getStringExtra("name"));
- hobby.setText("Hobby: "+i.getStringExtra("hobby"));
- age.setText("Age: "+i.getStringExtra("age"));
- phone.setText("Phone: "+i.getStringExtra("phone"));
- address.setText("Address: "+i.getStringExtra("address"));
- }
- }
- import android.app.Activity;
- import android.view.View;
- import android.view.ViewGroup;
- import android.widget.BaseAdapter;
- import android.widget.TextView;
- import org.json.JSONArray;
- import org.json.JSONException;
- import org.json.JSONObject;
- public class JSONAdapter extends BaseAdapter {
- private JSONArray data;
- private Activity activity;
- public JSONAdapter(JSONArray data, Activity activity){
- this.data = data;
- this.activity = activity;
- }
- @Override
- public int getCount() {
- return data.length();
- }
- @Override
- public Object getItem(int position) {
- try{
- return data.getJSONObject(position);
- }catch(JSONException joe){
- joe.printStackTrace();
- }
- return null;
- }
- @Override
- public long getItemId(int position) {
- return position;
- }
- @Override
- public View getView(int position, View convertView, ViewGroup parent) {
- if(convertView == null){
- convertView = activity.getLayoutInflater().inflate(R.layout.row,null);
- }
- TextView name = (TextView) convertView.findViewById(R.id.name);
- TextView hobby = (TextView) convertView.findViewById(R.id.hobby);
- try{
- JSONObject friend = data.getJSONObject(position);
- name.setText(friend.getString("name"));
- hobby.setText(friend.getString("hobby"));
- }catch(JSONException joe){
- joe.printStackTrace();
- }
- return convertView;
- }
- }
- import android.os.AsyncTask;
- import android.util.Log;
- import org.json.JSONArray;
- import java.io.BufferedReader;
- import java.io.InputStream;
- import java.io.InputStreamReader;
- import java.net.HttpURLConnection;
- import java.net.MalformedURLException;
- import java.net.URL;
- public class jsson_task extends AsyncTask<String , Void , JSONArray>{
- private JSONrequestCall listener;
- @Override
- protected JSONArray doInBackground(String... params) {
- JSONArray result=null;
- try{
- URL url = new URL(params[0]);
- HttpURLConnection connection = (HttpURLConnection) url.openConnection();
- int code = connection.getResponseCode();
- if(code == HttpURLConnection.HTTP_OK){
- InputStream is = connection.getInputStream();
- BufferedReader br = new BufferedReader(new InputStreamReader(is));
- StringBuilder sb = new StringBuilder();
- String currentLine = "";
- while((currentLine = br.readLine()) != null){
- Log.d("JSON RECEIVED",currentLine);
- sb.append(currentLine);
- }
- result = new JSONArray(sb.toString());
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- return result;
- }
- public jsson_task(JSONrequestCall listener){this.listener = listener;}
- @Override
- protected void onPostExecute(JSONArray jsonArray) {
- super.onPostExecute(jsonArray);
- listener.done(jsonArray);
- }
- public interface JSONrequestCall{
- void done(JSONArray jsonArray);
- }
- }
- import android.content.Intent;
- import android.support.v7.app.AppCompatActivity;
- import android.os.Bundle;
- import android.util.Log;
- import android.view.View;
- import android.widget.AdapterView;
- import android.widget.ListView;
- import android.widget.Toast;
- import org.json.JSONArray;
- import org.json.JSONException;
- import org.json.JSONObject;
- public class MainActivity extends AppCompatActivity implements jsson_task.JSONrequestCall, AdapterView.OnItemClickListener {
- ListView list;
- JSONAdapter jsonAdapter;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- list = (ListView) findViewById(R.id.list_view);
- }
- public void request(View v){
- jsson_task r = new jsson_task(this);
- r.execute("https://api.myjson.com/bins/lgupj");
- }
- @Override
- public void done(JSONArray jsonArray) {
- Toast.makeText(this, "DONE JSON-ing", Toast.LENGTH_SHORT).show();
- try{
- for(int i = 0; i < jsonArray.length(); i++){
- Log.d("JSON",i+" "+jsonArray.getJSONObject(i).get("hobby"));
- }
- jsonAdapter = new JSONAdapter(jsonArray, this);
- list.setAdapter(jsonAdapter);
- list.setOnItemClickListener(this);
- }catch(JSONException json){
- json.printStackTrace();
- }
- }
- @Override
- public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
- Toast.makeText(this, "Clicked!", Toast.LENGTH_SHORT).show();
- try{
- Intent i = new Intent(this, Friend.class);
- JSONObject json = (JSONObject)parent.getItemAtPosition(position);
- i.putExtra("name",json.getString("name"));
- i.putExtra("hobby",json.getString("hobby"));
- i.putExtra("age",json.getString("age"));
- i.putExtra("phone",json.getString("phone"));
- i.putExtra("address",json.getString("address"));
- Toast.makeText(this, json.getString("name"), Toast.LENGTH_SHORT).show();
- startActivity(i);
- }catch(JSONException joe){
- joe.printStackTrace();
- }
- }
- }
- <?xml version="1.0" encoding="utf-8"?>
- <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
- android:id="@+id/activity_friend"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:paddingBottom="@dimen/activity_vertical_margin"
- android:paddingLeft="@dimen/activity_horizontal_margin"
- android:paddingRight="@dimen/activity_horizontal_margin"
- android:paddingTop="@dimen/activity_vertical_margin"
- <TextView
- android:text="TextView"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:id="@+id/textView_address"
- android:layout_below="@+id/textView_phone"
- android:layout_alignStart="@+id/textView_phone"
- android:textAppearance="@style/TextAppearance.AppCompat.Large"/>
- <TextView
- android:text="TextView"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:id="@+id/textView_phone"
- android:layout_below="@+id/textView_age"
- android:layout_alignStart="@+id/textView_age"
- android:textAppearance="@style/TextAppearance.AppCompat.Large"/>
- <TextView
- android:text="TextView"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:id="@+id/textView_age"
- android:layout_below="@+id/textView_hobby"
- android:layout_alignStart="@+id/textView_hobby"
- android:textAppearance="@style/TextAppearance.AppCompat.Large"/>
- <TextView
- android:text="TextView"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:id="@+id/textView_hobby"
- android:layout_below="@+id/textView_name"
- android:layout_alignStart="@+id/textView_name"
- android:textAppearance="@style/TextAppearance.AppCompat.Large"/>
- <TextView
- android:text="TextView"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:id="@+id/textView_name"
- android:layout_alignParentTop="true"
- android:layout_alignParentStart="true"
- android:textAppearance="@style/TextAppearance.AppCompat.Large"/>
- </RelativeLayout>
- <?xml version="1.0" encoding="utf-8"?>
- <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
- android:id="@+id/activity_main"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:paddingBottom="@dimen/activity_vertical_margin"
- android:paddingLeft="@dimen/activity_horizontal_margin"
- android:paddingRight="@dimen/activity_horizontal_margin"
- android:paddingTop="@dimen/activity_vertical_margin"
- tools:context="com.example.jose.job_2.MainActivity">
- <Button
- android:text="LOAD"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_alignParentTop="true"
- android:layout_centerHorizontal="true"
- android:id="@+id/button_load"
- android:onClick="request"/>
- <ListView
- android:id="@+id/list_view"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_below="@+id/button_load"></ListView>
- </RelativeLayout>
- <?xml version="1.0" encoding="utf-8"?>
- <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical" android:layout_width="match_parent"
- android:layout_height="match_parent">
- <TextView
- android:id="@+id/name"
- android:layout_height="wrap_content"
- android:layout_width="match_parent"
- android:text="TextView"
- android:textAppearance="@style/TextAppearance.AppCompat.Large"
- android:layout_alignParentTop="true" />
- <TextView
- android:id="@+id/hobby"
- android:layout_height="wrap_content"
- android:layout_width="match_parent"
- android:text="TextView"
- android:layout_below="@+id/name"/>
- </RelativeLayout>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement