گروه کامپیوتر دانشگاه آزاد

اساتید و دانشجویان دانشگاه آزاد اسلامی

گروه کامپیوتر دانشگاه آزاد

اساتید و دانشجویان دانشگاه آزاد اسلامی

بِسْمِ اللَّهِ الرَّحْمَٰنِ الرَّحِیمِ
زکات علم، نشر آن است. گروه کامپیوتر دانشگاه آزاد با هدف خدمت به دانش آموزان ، دانشجویان و آنهایی که علاقه به برنامه نویسی و طراحی و کلیه امور تخصصی کامپیوتر دارند با هدف نشر علم خدمت رسانی کند امید است کاربران در جهت تحقق این اهداف والا یار و همدم ما باشند . . .

آخرین نظرات

سلام خوش اومدین به مبحث جدید برنامه نویسی اندروید.امروز میخاهیم در مورد گرید ویو(Gridview)در اندروید صحبت کنیم،گرید ویو در اندروید مثل لیست ویو هست ولی با این تفاوت که در لیست ویو ما به صورت یک بعدی میتوینم مطالب و اطلاعات رو به کاربر نشون بدیم ولی در گرید ویو اینگونه نیست و میتونیم به صورت دئ بعدی و در حالت گرید نمایش بدیم.در این اموزش ما با نحوه ساخت گرید ویو و مقدار دهی بهش اشنا میشیم.من یک پروژه جدید به اسم Gridview ساختم و از قسمت پالت ها در پوشه کامپوزیت (composite) ابزار Gridview رو انتخاب کردم و در مرکزیت لایه خودم قرار دادم .یه نگاهی به خواص گرید ویو بندازیم

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

می بینیم که یک خاصیت جدید در گرید ویو  به اسم android:numColumns هست این خاصیت تعداد ستون های گرید ویو رو مشخص میکنه و میتونه هم به صورت سفارشی باشه هم میتونه به صورت Auto_fit.در حالت سفارشی میتونه یه مقدار مدنظر بهش بدیم مثلا 3 یا 4 ولی در حالت auto_fit گرید ویو به صورت اتومتیک ستون ها رو میچینه.میخواهیم باهم چندتا خاصیت جدید به گرید ویو مون اضافه کنیم یکی از این خاصیت ها android:columnWidth هست،این خاصیت فاصله ستون ها از همدیگه رو مشخص میکنه و مقدارش هم با dp محاسبه میشه مثلا 100dp. خاصیت بعدی android:stretchMode هست این خاصیت یک حالت کششی به گرید ویو میده که  بتونه خودش رو ستون ها(column) هماهنگ کنه و مقدارش رو هم میتونه از  android:columnWidth بگیره.خاصیت بعدی که در همه ابزار های اندروید میشه ازش استفاده کرد android:gravity هست که محل قرار گیری ابزار بر روی لایه رو مشخص میکنه،که میتونه مقداری مثل center,top,left,rigth داشته باشه.در زیر کدهای کامل گرید ویو رو میبینید.

 <GridView
android:id="@+id/gridView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:columnWidth="100dp"
android:gravity="center"
android:stretchMode="columnWidth"
android:numColumns="auto_fit" >
</GridView>

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

package com.appinapps.gridview;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.GridView;
import android.widget.Toast;

public class MainActivity extends Activity {
	
	String [] web = {"UnitAzad" , "MahdiAmini" , "Developer" , "Learn" , "Graphic" , "FreeDownload" , "Android"};
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		
		//معرفی گرید ویو از لایه
		GridView grid = (GridView) findViewById(R.id.gridView1);
		
		//معرفی اداپتر 
		ArrayAdapter adapter = new ArrayAdapter(this,
				android.R.layout.simple_list_item_1, web);
		grid.setAdapter(adapter);
		
	  }
		
	
	

	@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;
	}

}

الان میتونید برنامه که ساختید رو اجرا کنید و نحوه کارش رو ببنید.موفق باشد

دانلود فایل Apk پروژه گرید ویو                                        دانلود سورس پروژه گریدویو

نظرات (۳)

با عرض سلام و خسته نباشید.
من تازه برنامه نویسی اندروید رو شروع کردم و می خوام اولین برنامه خودم رو طراحی کنم.
https://cafebazaar.ir/app/ir.peyman_mn.creativethings/?l=fa
بنده میخوام برنامه ای شبیه برنامه ای که در لینک بالا وجود داره طراحی کنم . برام چندتا سوال پیش اومده ؟؟
1- آیا برای ساخت این برنامه باید از GridView استفاده کرد ؟
2- اگر جواب سوال اول "بله" است . آیا باید به تعداد آموزش ها (در این برنامه 50 آموزش وجود دارد) Activity ایجاد کرد ؟ و هر عکس را به یک Activity متصل کرد ؟ یا راه دیگری وجود دارد.
3- آیا باید برای عکس های برنامه دیتابیس طراحی کرد ؟ یا باید عکس ها در خود پوشه drawablei قرار داد؟
ممنون میشم اگر راهنمایی بفرمایید.
سلام
با تشکر از پاسخگویی سریع شما بزرگوار
بزرگوار من میخوام عکس ها رو برای پس زمینه در یه گالری قرار بدم، یعنی کاربر بتونه از گالری عکس رو انتخاب کنه و بزاره توی پس زمینه، حالا اون عکس ها رو که نمیتونم حجمشون رو کم کنم! بی کیفیت میشن، الگوریتم بازسازی حافظه چیه؟
میشه اونو بزارید توی سایت ،
پاسخ:
با سلام پاسخگوئی و رفع مشکلات کاربران یکی از وظایف ماست چشم بزودی همکارانم آموزششو می ذارن
سلام
خداقوت
ممنون از مطلب خوبتون
من یه گرید ویو گذاستم میخوام باهاش گالری عکس بسازم ولی وقتی تعداد عکس ها رو زیاد میکنم
کرش میکنه و اجرا نمیشه ولی با تعداد عکس کم جواب میده مشکل از کجاست؟؟
پاسخ:
با سلام باید از الگوریتم باز سازی حافظه استفاده کنید یا حجم عکس ها رو کم کنید با فتوشاپ در صورتی که مشکل داشتین آموزششو می ذاریم یا علی
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
تجدید کد امنیتی