lundi 29 décembre 2014

[Q] How to pass image from one intent to another topic

21:48






Hi friends,
Here is my code for displaying details and images from MySQL database,All i want to do is pass the detail with image to other inner page through intent.Please help me im new in android.

Activity 1


Code:


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.List;

import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import android.annotation.SuppressLint;
import android.app.ActionBar.LayoutParams;
import android.app.Fragment;
import android.app.ProgressDialog;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Color;
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;

@SuppressLint("NewApi") public class News_events extends Fragment {
    private String jsonResult;
    private String url = "<URL PHP FILES>";
    HttpPost httppost;
    StringBuffer buffer;
    HttpResponse response;
    HttpClient httpclient;
    List<NameValuePair> nameValuePairs;
    ProgressDialog dialog = null;
    ImageView img;
      Bitmap bitmap;
      ProgressDialog pDialog;
     

  // alert dialog manager
          AlertDialogManager alert = new AlertDialogManager();
         
          // Internet detector
          ConnectionDetector cd;
         
    InputStream is=null;
    String result=null;
        String line=null;
        int code;

    public News_events(){}

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
            pDialog = new ProgressDialog(getActivity());
        View rootView = inflater.inflate(R.layout.fragment_news_events, container, false);
       
        cd = new ConnectionDetector(rootView.getContext());

                // Check if Internet present
                if (!cd.isConnectingToInternet()) {
                        // Internet Connection is not present
                        alert.showAlertDialog(getActivity(),
                                        "Internet Connection Error",
                                        "Please connect to working Internet connection", false);
                        // stop executing code by return
                        //return.rootView;
                        return rootView;
                }
       
                accessWebService();
        return rootView;
    }

    // Async Task to access the web
    private class JsonReadTask extends AsyncTask<String, Void, String> {
      @Override
      protected String doInBackground(String... params) {
          List<NameValuePair> nameValuePair = new ArrayList<NameValuePair>(1);


      HttpClient httpclient = new DefaultHttpClient();
      HttpPost httppost = new HttpPost(params[0]);
      try {

        httppost.setEntity(new UrlEncodedFormEntity(nameValuePair));
        HttpResponse response = httpclient.execute(httppost);
        jsonResult = inputStreamToString(
          response.getEntity().getContent()).toString();
        }

      catch (ClientProtocolException e) {
        e.printStackTrace();
      } catch (IOException e) {
        e.printStackTrace();
      }
      return null;
      }

      private StringBuilder inputStreamToString(InputStream is) {
      String rLine = "";
      StringBuilder answer = new StringBuilder();
      BufferedReader rd = new BufferedReader(new InputStreamReader(is));

      try {
        while ((rLine = rd.readLine()) != null) {
        answer.append(rLine);
        }
      }
        catch (IOException e) {
        // e.printStackTrace();
        Toast.makeText(getActivity().getApplicationContext(),
          "Error..." + e.toString(), Toast.LENGTH_LONG).show();
      }
      return answer;
      }

      @Override
      protected void onPostExecute(String result) {
      display();
      }
    }// end async task

    public void accessWebService() {
      JsonReadTask task = new JsonReadTask();
      // passes values for the urls string array
      task.execute(new String[] { url });
    }

    // build hash set for list view
    public void display() {


      try {
      JSONObject jsonResponse = new JSONObject(jsonResult);
      JSONArray jsonMainNode = jsonResponse.optJSONArray("news_details");
      LinearLayout MainLL= (LinearLayout)getActivity().findViewById(R.id.newslayout);
      //LinearLayout headLN=(LinearLayout)findViewById(R.id.headsection);

      for (int i = 0; i < jsonMainNode.length(); i++) {
          JSONObject jsonChildNode = jsonMainNode.getJSONObject(i);
            final String head = jsonChildNode.optString("title");
            final String details = jsonChildNode.optString("text");
            final String date = jsonChildNode.optString("date");
            final String image = jsonChildNode.optString("img");
            //final String time = jsonChildNode.optString("time");
            //img = new ImageView(this.getActivity());
            //new LoadImage().execute("<URL IMAGE FOLDER>"+image);

            img = new ImageView(this.getActivity());
            LoadImage ldimg=new LoadImage();
            ldimg.setImage(img);
            ldimg.execute("<URL IMAGE FOLDER>"+image);


            TextView headln = new TextView(this.getActivity());
            headln.setText(head); // News Headlines
            headln.setTextSize(16);
            headln.setTextColor(Color.BLACK);
            headln.setGravity(Gravity.CENTER);
            headln.setBackgroundColor(Color.parseColor("#ffcd14"));
          //  headln.setBackgroundResource(R.drawable.menubg);
            headln.setPadding(0, 20, 0, 0);
          //  headln.setHeight(50);
            headln.setClickable(true);
           

            TextView dateln = new TextView(this.getActivity());
            dateln.setText(date); // News Headlines
            dateln.setTextSize(12);
            dateln.setTextColor(Color.BLACK);
            dateln.setGravity(Gravity.RIGHT);
            //dateln.setBackgroundColor(Color.parseColor("#f20056"));
            dateln.setBackgroundColor(0x00000000);
            dateln.setPadding(0, 0, 10, 10);
            dateln.setWidth(100);
            dateln.setClickable(true);
                   
         

            View sep=new View(this.getActivity());
            sep.setBackgroundColor(Color.parseColor("#252525"));
            sep.setMinimumHeight(10);

            TextView detailsln = new TextView(this.getActivity());
            detailsln.setText(details); // News Details
            detailsln.setTextSize(12);
            detailsln.setTextColor(Color.BLACK);
            detailsln.setGravity(Gravity.CENTER);
            detailsln.setPadding(10, 10, 10, 10);
           
            int width = LayoutParams.WRAP_CONTENT;
            int height = 200;
          LinearLayout.LayoutParams parms = new LinearLayout.LayoutParams(width,height);
          img.setLayoutParams(parms);
          parms.gravity = Gravity.CENTER;
          img.setPaddingRelative (15, 15, 15, 15);
                   
           
           
            MainLL.addView(headln);
            MainLL.addView(dateln);
        //  MainLL.addView(photo);
            MainLL.addView(img);
            MainLL.addView(detailsln);
            MainLL.addView(sep);
         
            img.setClickable(true);
           
            headln.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    //Toast.makeText(getBaseContext(), head, Toast.LENGTH_SHORT).show();
                  Intent intent = new Intent(getActivity().getApplicationContext(),InnerNewsAndEvents.class);
                  intent.putExtra("head",head.toString());
                  intent.putExtra("details",details.toString());
                  intent.putExtra("date",date.toString());
                  intent.putExtra("img",img.toString());
                  // intent.putExtra("time",time.toString());
                  startActivity(intent);     
                }
            });
           
            dateln.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                  // TODO Auto-generated method stub
                    Intent intent = new Intent(getActivity().getApplicationContext(),InnerNewsAndEvents.class);
                intent.putExtra("head",head.toString());
                intent.putExtra("details",details.toString());
                intent.putExtra("date",date.toString());
                intent.putExtra("img",img.toString());
              // intent.putExtra("time",time.toString());
                startActivity(intent);     
                }
            });
           
            img.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                    // TODO Auto-generated method stub
                    Intent intent = new Intent(getActivity().getApplicationContext(),InnerNewsAndEvents.class);
                intent.putExtra("head",head.toString());
                intent.putExtra("details",details.toString());
                intent.putExtra("date",date.toString());
                intent.putExtra("img",img.toString());
              // intent.putExtra("time",time.toString());
                startActivity(intent);     
                }
            });

      }
      } catch (JSONException e) {
      Toast.makeText(getActivity().getApplicationContext(), "Error" + e.toString(),
        Toast.LENGTH_SHORT).show();
      }
      }

    private class LoadImage extends AsyncTask<String, String, Bitmap> {
        ImageView img;
                    @Override
                        protected void onPreExecute() {
                            super.onPreExecute();
                           
                            pDialog.setMessage("Loading Image ....");
                            pDialog.show();


                    }
        public void setImage(ImageView img ){
        this.img=img;
        }

        protected Bitmap doInBackground(String... args) {
            try {
                bitmap = BitmapFactory.decodeStream((InputStream)new URL(args[0]).openStream());
                }
            catch (Exception e) { e.printStackTrace(); }
            return bitmap;
        }

        protected void onPostExecute(Bitmap image) {
              if(image != null){
                  img.setImageBitmap(image);
               
                  pDialog.dismiss();
              }
              pDialog.dismiss();
        }

    }
   
    public static boolean isInternetReachable()
    {
        try {
            //make a URL to a known source
            URL url = new URL("google");

            //open a connection to that source
            HttpURLConnection urlConnect = (HttpURLConnection)url.openConnection();

            //trying to retrieve data from the source. If there
            //is no connection, this line will fail
            Object objData = urlConnect.getContent();

        } catch (UnknownHostException e) {
            e.printStackTrace();
            return false;
        }
        catch (IOException e) {
            e.printStackTrace();
            return false;
        }
        return true;
    }
}



Activity 2


Code:


import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.TextView;

public class InnerNewsAndEvents extends Activity {
        ProgressDialog pDialog;
        ProgressDialog dialog = null;
    Bitmap bitmap;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.activity_inner_news_and_events);
               
                TextView title=(TextView)findViewById(R.id.tvtitle);
                TextView details=(TextView)findViewById(R.id.tvdetails);
                ImageView img=(ImageView)findViewById(R.id.imgpic);
               
                Intent intent = getIntent();
        String strhead = intent.getStringExtra("head");
        String strdetails = intent.getStringExtra("details");
        String strdate = intent.getStringExtra("date");
        String strimg = intent.getStringExtra("img");
               
        title.setText(strhead);
        details.setText(strdetails);
       
       
     
        }
}

import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.TextView;

public class InnerNewsAndEvents extends Activity {
        ProgressDialog pDialog;
        ProgressDialog dialog = null;
    Bitmap bitmap;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.activity_inner_news_and_events);
               
                TextView title=(TextView)findViewById(R.id.tvtitle);
                TextView details=(TextView)findViewById(R.id.tvdetails);
                ImageView img=(ImageView)findViewById(R.id.imgpic);
               
                Intent intent = getIntent();
        String strhead = intent.getStringExtra("head");
        String strdetails = intent.getStringExtra("details");
        String strdate = intent.getStringExtra("date");
        String strimg = intent.getStringExtra("img");
               
        title.setText(strhead);
        details.setText(strdetails);
       
       
     
        }
}








Written by

We are Creative Blogger Theme Wavers which provides user friendly, effective and easy to use themes. Each support has free and providing HD support screen casting.

0 commentaires:

Enregistrer un commentaire

 

© 2013 Mobile Probleme. All rights resevered. Designed by Templateism

Back To Top