Android how to open image and display it in second activity -


i working on app editing photos

i have button in first activity , imageview in second activity. when click button open gallery , able select image. selected image needs appear in imageview in second activity doesn't.

down below code not working,have idea wrong?

first activity:

package com.example.odabirslike;  import android.net.uri; import android.os.bundle; import android.provider.mediastore; import android.app.activity; import android.content.intent; import android.database.cursor; import android.graphics.bitmap; import android.graphics.bitmapfactory; import android.view.menu; import android.view.view; import android.widget.button; import android.widget.imageview;  public class pocetni extends activity {      private button buttonloadimage;      private static final int select_picture = 1;      @override     protected void oncreate(bundle savedinstancestate)      {         super.oncreate(savedinstancestate);         setcontentview(r.layout.activity_pocetni);          this.buttonloadimage = (button) this.findviewbyid(r.id.pickbutton);          buttonloadimage.setonclicklistener(new view.onclicklistener()         {             @override             public void onclick(view arg0)              {                 intent = new intent();                   i.settype("image/*");                   i.setaction(intent.action_get_content);                   startactivityforresult(intent.createchooser(i, "complete action using"), select_picture);                            }         });     }      protected void onactivityresult(int requestcode, int resultcode, intent data)      {          bitmap selectedphoto   = null;         super.onactivityresult(requestcode, resultcode, data);         if (requestcode == select_picture && resultcode == result_ok && null != data)          {             uri selectedimage = data.getdata();             string [] filepathcolumn = {mediastore.images.media.data};             cursor cursor = getcontentresolver().query(selectedimage, filepathcolumn, null, null, null);             cursor.movetofirst();                    int columnindex = cursor.getcolumnindex(filepathcolumn[0]);             string filepath = cursor.getstring(columnindex);             selectedphoto = bitmapfactory.decodefile(filepath);             cursor.close();             intent = new intent (pocetni.this, drugi.class);             i.putextra("data",selectedphoto);             startactivity(i);          }      } } 

second activity:

package com.example.odabirslike;  import android.os.bundle; import android.app.activity; import android.graphics.bitmap; import android.view.menu; import android.widget.imageview;  public class drugi extends activity {      imageview view = (imageview) findviewbyid(r.id.imageview1);      @override     protected void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);         setcontentview(r.layout.activity_drugi);          bitmap selectedphoto  =(bitmap)this.getintent().getparcelableextra("data");         view.setimagebitmap(selectedphoto);     } } 

android manifest:

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"     package="com.example.odabirslike"     android:versioncode="1"     android:versionname="1.0" >     <uses-permission android:name="android.permission.write_external_storage" />  <uses-sdk         android:minsdkversion="15"         android:targetsdkversion="15" />       <application         android:allowbackup="true"         android:icon="@drawable/ic_launcher"         android:label="@string/app_name"         android:theme="@style/apptheme" >         <activity             android:name="com.example.odabirslike.pocetni"             android:label="@string/app_name" >             <intent-filter>                 <action android:name="android.intent.action.main" />                  <category android:name="android.intent.category.launcher" />             </intent-filter>         </activity>         <activity             android:name="com.example.odabirslike.drugi"             android:label="drugi" >         </activity>     </application>  </manifest> 

it might bitmap big passed around that. why don't instead, put

 string filepath = cursor.getstring(columnindex);  i.putextra("data",filepath); 

in first activity. , in second

string filepath   =this.getintent().getstringextra("data"); bitmap selectedphoto = bitmapfactory.decodefile(filepath); 

should less cumbersome app, @ least


Comments

Popular posts from this blog

linux - xterm copying to CLIPBOARD using copy-selection causes automatic updating of CLIPBOARD upon mouse selection -

c++ - qgraphicsview horizontal scrolling always has a vertical delta -