Hallo,
wie mein Name schon sagt, bin ich ein totaler Neuling in App-programmierung (auch java allgemein noch nicht fortgeschritten). Wie dem auch sei, ich habe eine App, mit der ich ein Foto schiessen kann und dieses Foto wird an einem anderem ort abgespeichert. Nun möchte ich neben meinem "Foto machen" - Button noch einen "Galerie"-Button haben, mit dem ich nur die Bilder anzeigen lassen möchte die in diesem bestimmten Ordner sind.
Die Bilder müssten (wie in der Android Bildergalerie) automatisch aktualisiert werden wenn man sie anzeigen lassen möchte.
Ich habe mir mal den Universal Image Loader angesehen, nur habe ich leider keine richtige Anleitung gefunden dies Schritt für Schritt anhand eines Beispiels zu bauen...
Ist dies überhaupt möglich zu realisieren?
Ich würde mich über Hilfe sehr freuen, da jede kleinigkeit und jeder Schritt teilweise ein riesen aufwand für mich ist.
Wie meine App im Javacode momentan aufgebaut ist:
package ???.galerie.app;
import android.app.Activity;import android.content.Intent;import android.graphics.BitmapFactory;import android.net.Uri;import android.os.Bundle;import android.os.Environment;import android.provider.MediaStore;import android.view.View;import android.widget.Button;import android.widget.ImageView;import android.graphics.Bitmap;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;
import java.io.File;import java.text.SimpleDateFormat;import java.util.Date;
public class MainActivity extends Activity {
private Button open_camera_button; private Button open_gallery_button; private Button end_app_button; //test private static int TAKE_PICTURE = 1; private Uri outputFileUri;
private static final int REQUEST_CODE = 1; private Bitmap bitmap; private ImageView imageView;
/** * onCreate() is called as the first method of the program. * * @param savedInstanceState */ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);
final java.io.File file = new java.io.File("/gallerie_app/"); if (file.exists()) { boolean myPath = true; } else { String galleryFolder = "/gallerie_app"; String extStorageDirectory = Environment.getExternalStorageDirectory().toString(); File myNewFolder = new File(extStorageDirectory + galleryFolder); myNewFolder.mkdir(); }
open_camera_button = (Button) findViewById(R.id.new_pic_button); open_camera_button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) {
Intent data = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); String timeStamp = new SimpleDateFormat("yyyyMMdd_HHss").format(new Date());
File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath(), "/gallerie_app/Puuudel_" + timeStamp + "uhr.jpg");
outputFileUri = Uri.fromFile(file); data.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri); startActivityForResult(data, TAKE_PICTURE); }
protected void safeThePictureSafetheWorld(int requestCode, int resultCode, Intent data) { if (requestCode == REQUEST_CODE && resultCode == Activity.RESULT_OK) { if(data.getData() != null) { try { if (bitmap != null) { bitmap.recycle(); }
InputStream stream = getContentResolver().openInputStream(data.getData()); bitmap = BitmapFactory.decodeStream(stream); stream.close(); imageView.setImageBitmap(bitmap); }
catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } else { bitmap=(Bitmap) data.getExtras().get("data"); imageView.setImageBitmap(bitmap); } } } });
open_gallery_button = (Button) findViewById(R.id.gallery_button); open_gallery_button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent in = new Intent(MainActivity.this,gallery.class); startActivity(in); } }); end_app_button = (Button) findViewById(R.id.end_app_button); end_app_button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { finish(); } }); }
}
Alles anzeigen
Schöne Grüße
Newbie