کار با لیست کشویی (Spinner) در اندروید

Spinner یا لیست کشویی در اندروید

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

روش کار باSpinner

برای نشان دادن داده ها در یک spinner یا باید از یک کلاس آداپتور بهره بگیریم. یا اینکه با استفاده از ویژگی یا Propertise android:entries موجود در فایل XML مجموعه داده های ذخیره شده ، در فایل String را که بصورت آرایه ذخیره شده است را فراخوانی می کنیم. اگرچه Spinner به طور عمده برای نمایش فیلد متن استفاده می شود، که در آن از یک Array Adapter بهره می گیریم. و لیکن ما همچنین می توانیم از آداپتور پایه و سایر آداپتورهای سفارشی استفاده کنیم تا بتوانیم لیست سفارشی و مطلوب نظر خود را اجرا کنیم.

فرض کنید اگر ما نیاز داشته باشیم که هم متن و تصویر به طور همزمان در لیست داشته باشیم، صرفا array adapter برای آن کافی نیست فلذا باید آداپتور سفارشی را در کلاس خود قرار دهیم.

می خواهیم مانند تصویر بالا یک لیست کشویی بسازیم که در آن لیست شرکت های سازنده ی گوشی را نمایش دهیم و کاربر بتواند با کلیک بر روی هر آیتم برند خود را انتخاب کند.

یک پروژه جدید ایجاد کنیم و اسمش رو Spinner قرار بدین،از قسمت پالت ها (Palette) ابزار اسپینر(Spinner) رو بروی لایه برنامه می کشیم و برنامه رو ذخیره میکنیم.(کدهای زیر مربوط به بخش xml یا لایه برنامه است)

در قسمت  جاوا MainActivity

برای اینکه بتونیم خاصیت کلیک روی آیتم های Spinner ایجاد کنیم، لازم است اکتیویتی را implements کنیم به AdapterView.OnItemSelectedListener که با این کار یک چراغ قرمز رنگ ظاهر میشود.

و با کلیک بر روی این چراغ از ما می خواهد متدهای مربوطه را ایمپورت کنیم .

بدین ترتیب متدهای onItemSelected و onNothingSelected به اکتیویتی اضافه می شوند.

 

کلیک روی آیتم های Spinner

می خواهیم با کلیک بر روی هر آیتم ، آن ایتم ، داخل، Toast نشان داده شود. برای این کار باید از متد onItemSelected استفاده کنیم، به اینصورت که می گوییم مقدار آیتمی که روی آن کلیک شده را بگیر، ور در داخل، Toast نمایش بده .

نتیجه :

مطالب بیشتر:

https://www.javatpoint.com/android-spinner-example

مطالعه بیشتر