alitm

کار با گریدویو

2 ارسال در این موضوع قرار دارد

سلام.

من تو یک برنامه میخوام از گریدویویی استفاده کنم که نمایش دهنده ی چند عکسی هست که در پوشه ی res قرار دارن به طوری که، وقتی کاربر روی هر یک از عکس ها کلیک میکنه بتونه وارد اکتیویتی جدیدی بشه. برای اینکار باید از چه کد هایی استفاده کنم؟

 ممنون میشم راهنمایی کنید.

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


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

برای ساخت Gridview ابتدا در فایل main.xml خود ویجت گرید ویو را قرار دهید.

grid_layout.xml

[shcode=xml]<?xml version="1.0" encoding="utf-8"?>

    android:id="@+id/grid_view"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    android:numColumns="auto_fit"

    android:columnWidth="90dp"

    android:horizontalSpacing="10dp"

    android:verticalSpacing="10dp"

    android:gravity="center"

    android:stretchMode="columnWidth" > 

 

[/shcode]

سپس  یک کلاس baseAdapter ایجاد کنید و کلاس سازنده مربوط به گرید ویو ساخته شود.

[shcode=java]

    private Context mContext;

 

    // Keep all Images in array

    public Integer[] mThumbIds = {

            R.drawable.pic_1, R.drawable.pic_2,

            R.drawable.pic_3, R.drawable.pic_4,

            R.drawable.pic_5, R.drawable.pic_6,

            R.drawable.pic_7, R.drawable.pic_8,

            R.drawable.pic_9, R.drawable.pic_10,

            R.drawable.pic_11, R.drawable.pic_12,

            R.drawable.pic_13, R.drawable.pic_14,

            R.drawable.pic_15

    };

 

    // Constructor

    public ImageAdapter(Context c){

        mContext = c;

    }

 

    @Override

    public int getCount() {

        return mThumbIds.length;

    }

 

    @Override

    public Object getItem(int position) {

        return mThumbIds[position];

    }

 

    @Override

    public long getItemId(int position) {

        return 0;

    }

 

    @Override

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

        ImageView imageView = new ImageView(mContext);

        imageView.setImageResource(mThumbIds[position]);

        imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);

        imageView.setLayoutParams(new GridView.LayoutParams(70, 70));

        return imageView;

    }

 

}

[/shcode]

در مرحله اخر در اکتیویتی خود سازنده را ایجاد کنید :

[shcode=java]

public class AndroidGridLayoutActivity extends Activity {

 

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.grid_layout);

 

        GridView gridView = (GridView) findViewById(R.id.grid_view);

 

        // Instance of ImageAdapter Class

        gridView.setAdapter(new ImageAdapter(this));

    }

}

[/shcode]

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


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

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری