Link to home
Start Free TrialLog in
Avatar of KPax
KPax

asked on

Dynamic android picture gallery

I am learning Android, and I want to create simple application with few buttons on main page, each leading to small gallery. I created such application, but pictures are statically linked. What would be the best way to make it dynamically load  as much as pictures as there are in res/drawable folder ? I need simplest possible method for that. Here is my code:

GalerijaApartmani.java

package rs.limitline.topcider;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;

public class GalerijaApartmani extends Activity implements OnClickListener {

	private ImageView imageViewMain;
	private ImageView imageView1;
	private ImageView imageView2;
	private ImageView imageView3;
	private ImageView imageView4;
	private ImageView imageView5;
	private ImageView imageView6;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.galerija_apartmani);
		imageViewMain = (ImageView) findViewById(R.id.imageViewMain);
		imageView1 = (ImageView) findViewById(R.id.imageView1);
		imageView2 = (ImageView) findViewById(R.id.imageView2);
		imageView3 = (ImageView) findViewById(R.id.imageView3);
		imageView4 = (ImageView) findViewById(R.id.imageView4);
		imageView5 = (ImageView) findViewById(R.id.imageView5);
		imageView6 = (ImageView) findViewById(R.id.imageView6);
		imageView1.setOnClickListener(this);
		imageView2.setOnClickListener(this);
		imageView3.setOnClickListener(this);
		imageView4.setOnClickListener(this);
		imageView5.setOnClickListener(this);
		imageView6.setOnClickListener(this);
	}

	@Override
	public void onClick(View v) {
		ImageView imageView = (ImageView) findViewById(v.getId());
		imageViewMain.setImageDrawable(imageView.getDrawable());
	}
}

Open in new window


and here is MainActivity.java

package rs.limitline.topcider;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;

public class MainActivity extends Activity {

	private Button button;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		button = (Button) findViewById(R.id.button1);
		button.setOnClickListener(new View.OnClickListener() {

			@Override
			public void onClick(View v) {
				Intent galerija = new Intent(
						"rs.limitline.topcider.GALERIJA_APARTMANI");
				startActivity(galerija);
			}
		});

	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}
}

Open in new window

ASKER CERTIFIED SOLUTION
Avatar of girionis
girionis
Flag of Greece image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial