Logcat output?
01.04.2011 12:04 пользователь "mack2978" <[email protected]> написал:
> Hi All,
>
> I am trying to show full image when clicking on one of the thumbnail
> of grid view, i am able to view the grid with thumbnails but as soon
> as i click on any thumbnail to show it in full screen, handling
> onItemClick(), it crashes. below is my complete code, please help
>
> package com.example.HelloGridView;
>
>
> import android.app.Activity;
> import android.os.Bundle;
> import android.content.Context;
> import android.content.res.Resources;
> import android.graphics.Bitmap;
> import android.graphics.Canvas;
> import android.graphics.Paint;
> import android.graphics.drawable.Drawable;
> import android.util.AttributeSet;
> import android.view.View;
> import android.view.ViewGroup;
> import android.widget.AdapterView;
> import android.widget.AdapterView.OnItemClickListener;
> import android.widget.BaseAdapter;
> import android.widget.GridView;
> import android.widget.ImageView;
> import android.widget.Toast;
>
> public class HelloGridView extends Activity{
> int current_pos;
> private Bitmap[] mTileArray;
> private MyView myView;
> /** Called when the activity is first created. */
> @Override
> public void onCreate(Bundle savedInstanceState) {
> super.onCreate(savedInstanceState);
> setContentView(R.layout.main);
> GridView gridview = (GridView) findViewById(R.id.gridview);
> gridview.setAdapter(new ImageAdapter(this));
> gridview.setOnItemClickListener(new OnItemClickListener() {
> public void onItemClick(AdapterView<?> parent, View v, int
> position, long id)
> {
> Toast.makeText(HelloGridView.this, "" + position,
> Toast.LENGTH_SHORT).show();
> current_pos = position;
> myView.invalidate();
> }
> });
>
> }
>
> public class ImageAdapter extends BaseAdapter {
> private Context mContext;
>
> public ImageAdapter(Context c) {
> mContext = c;
> }
>
> public int getCount() {
> return mThumbIds.length;
> }
>
> public Object getItem(int position) {
> return null;
> }
>
> public long getItemId(int position) {
> return 0;
> }
>
> // create a new ImageView for each item referenced by the
> Adapter
> public View getView(int position, View convertView, ViewGroup
> parent) {
> ImageView imageView;
> if (convertView == null) { // if it's not recycled,
> initialize some attributes
> imageView = new ImageView(mContext);
> imageView.setLayoutParams(new
> GridView.LayoutParams(85, 85));
>
> imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
> imageView.setPadding(8, 8, 8, 8);
> } else {
> imageView = (ImageView) convertView;
> }
>
> imageView.setImageResource(mThumbIds[position]);
> return imageView;
> }
>
> // references to our images
> private Integer[] mThumbIds = {
> R.drawable.sample_0, R.drawable.sample_1,
> R.drawable.sample_2, R.drawable.sample_0
> };
> }
>
>
>
> public class MyView extends View {
>
> private Bitmap[] mTileArray;
> private final Paint mPaint = new Paint();
>
> public MyView(Context context, AttributeSet attrs, int
> defStyle) {
> super(context, attrs, defStyle);
>
> //TypedArray a = context.obtainStyledAttributes(attrs,
> R.styleable.TileView);
> // mTileSize = a.getInt(R.styleable.TileView_tileSize, 12);
> //a.recycle();
> Resources r = this.getContext().getResources();
> loadTile(0,
> r.getDrawable(R.drawable.sample_0));
> loadTile(1, r.getDrawable(R.drawable.sample_1));
> loadTile(2, r.getDrawable(R.drawable.sample_2));
> loadTile(3, r.getDrawable(R.drawable.sample_0));
> }
>
> public MyView(Context context, AttributeSet attrs) {
> super(context, attrs);
>
> Resources r = this.getContext().getResources();
> loadTile(0,
> r.getDrawable(R.drawable.sample_0));
> loadTile(1, r.getDrawable(R.drawable.sample_1));
> loadTile(2, r.getDrawable(R.drawable.sample_2));
> loadTile(3, r.getDrawable(R.drawable.sample_0));
> }
>
>
> public void loadTile(int key, Drawable tile) {
> Bitmap bitmap = Bitmap.createBitmap(191, 285,
> Bitmap.Config.ARGB_8888);
> Canvas canvas = new Canvas(bitmap);
> tile.setBounds(0, 0, 191, 285);
> tile.draw(canvas);
> mTileArray[key] = bitmap;
> }
>
>
> @Override
> public void onDraw(Canvas canvas) {
> super.onDraw(canvas);
> canvas.drawBitmap(mTileArray[1], 0,0, mPaint);
>
> }
>
> }
>
> }
>
> --
> You received this message because you are subscribed to the Google
> Groups "Android Developers" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/android-developers?hl=en

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to