رفتن به مطلب
انجمن اندروید ایران | آموزش برنامه نویسی اندروید و موبایل
  • android.png.1fab383bc8500cd93127cebc65b1dcab.png

نمایش عکس های دیتابیس در گالری


پست های پیشنهاد شده

سلام دوستان

من در برنامه ای که نوشتم یک بخش نمایش تصویر دارم که میخوام از مدل زیر برای نمایش استفاده کنم ولی نمیتونم آرایه های mThumbIds و mImageIds رو با اطلاعات دیتابیس پر کنم در صورتی که کد با دستورR.drawable.ic_launcher که عکس ها رو مستقیما از drowable میگیره کار میکنه کار میکنه

package com.example.serat123;

import java.io.IOException;

import java.util.ArrayList;

import java.util.HashMap;

import android.app.Activity;

import android.content.Context;

import android.database.Cursor;

import android.database.SQLException;

import android.database.sqlite.SQLiteDatabase;

import android.os.Bundle;

import android.view.View;

import android.view.ViewGroup;

import android.view.Window;

import android.view.animation.AnimationUtils;

import android.widget.AdapterView;

import android.widget.BaseAdapter;

import android.widget.Gallery;

import android.widget.ListAdapter;

import android.widget.Gallery.LayoutParams;

import android.widget.ImageSwitcher;

import android.widget.ImageView;

import android.widget.ViewSwitcher;

@SuppressWarnings("deprecation")

public class gallery_ extends Activity implements

        AdapterView.OnItemSelectedListener, ViewSwitcher.ViewFactory {

    Database myDbHelper;

    SQLiteDatabase db;

    ListAdapter adapter;

    ArrayList> data;

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        requestWindowFeature(Window.FEATURE_NO_TITLE);

        setContentView(R.layout.gallery);

       

        Load_Database();

        db = myDbHelper.getReadableDatabase();

        Cursor    c = db.rawQuery("select * from content", null);

            data = new ArrayList>();

            String category=null;

            for (; c.moveToNext();) {

                HashMap map = new HashMap();

                String img = c.getString(c.getColumnIndex("img"));

                category = c.getString(c.getColumnIndex("category"));

               

                if(category.equalsIgnoreCase("poster")){

                    map.put("img", img);

                    data.add(map);

                }

            }

        mSwitcher = (ImageSwitcher) findViewById(R.id.switcher);

        mSwitcher.setFactory(this);

        mSwitcher.setInAnimation(AnimationUtils.loadAnimation(this,

                android.R.anim.fade_in));

        mSwitcher.setOutAnimation(AnimationUtils.loadAnimation(this,

                android.R.anim.fade_out));

        Gallery g = (Gallery) findViewById(R.id.gallery);

        g.setAdapter(new ImageAdapter(this));

        g.setOnItemSelectedListener(this);

       

        }

    public void onItemSelected(AdapterView<?> parent, View v, int position,

            long id) {

       

        mSwitcher.setImageResource(mImageIds[position]);

       

    }

    public void onNothingSelected(AdapterView<?> parent) {

    }

    public View makeView() {

        ImageView i = new ImageView(this);

        i.setBackgroundColor(0xFF000000);

        i.setScaleType(ImageView.ScaleType.FIT_CENTER);

        i.setLayoutParams(new ImageSwitcher.LayoutParams(

                LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));

        return i;

    }

    private ImageSwitcher mSwitcher;

    public class ImageAdapter extends BaseAdapter {

        public ImageAdapter(Context c) {

            mContext = c;

        }

        public int getCount() {

            return mThumbIds.length;

        }

        public Object getItem(int position) {

            return position;

        }

        public long getItemId(int position) {

            return position;

        }

        public View getView(int position, View convertView, ViewGroup parent) {

            ImageView i = new ImageView(mContext);

            i.setImageResource(mThumbIds[position]);

            i.setAdjustViewBounds(true);

            i.setLayoutParams(new Gallery.LayoutParams(

                    LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));

            i.setBackgroundResource(R.drawable.picture_frame);

            return i;

        }

        private Context mContext;

    }

        private Integer[] mThumbIds = {

                R.drawable.ic_launcher

            };

    private Integer[] mImageIds = {

            R.drawable.ic_launcher

           

             

            };

 

   

    private void Load_Database() throws Error {

        myDbHelper = new Database(gallery_.this);

        try {

            myDbHelper.createDataBase();

        } catch (IOException ioe) {

            throw new Error("Unable to create database");

        }

        try {

            myDbHelper.openDataBase();

        } catch (SQLException sqle) {

            throw sqle;

        }

    }

}

لینک ارسال
به اشتراک گذاری در سایت های دیگر

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...