ساخت Spinner با Checkbox در اندروید

سلام دوستان در این سری از آموزش برنامه نویسی اندروید به آموزش ساخت Spinner با Checkbox در اندروید می پردازیم منظور ساخت spinner که آیتم های آن قابلیت CheckBox را داشته باشد و شما بتوانید چندین آیتم را انتخاب کنید و بتوانید نتیجه آن را دریافت کنید در ادامه با ما همراه باشید.
به صورت معمول همچین چیزی امکان پذیر نیست پس ما باید آداپتور و Model سفارشی خودمان را درست کنیم.
ابتدا یک layout برای این منظور درست می کنیم پس در res/layout یک فایل از نوع xml به نام spinner_item.xml ایجاد کرده و کدهای زیر را در آن قرار دهید.

در بالا Checkbox را با استفاده از یک trick فارسی یا rtl کردیم !
خب یک کلاس Model به نام StateVO.java ایجاد کرده و کدهای زیر را در آن قرار دهید.

کلاس بالا کلاس POJO یا Model ماست. دو فیلد در نظر گرفتیم title مربوط به هر یک از checkbox ها و state یا حالت مربوط به check ها (true یا false بودن آنها)
بعد از اینکار یک کلاس آداپتور مثل زیر ایجاد کنید نام آن برابر با MyAdapter.java است.

آداپتور تمامی بخش ها را برای ما درست می کنید فقط کافی است ما مقادیری را همانند یک list از نوع Model که درست کردیم و context به آن پاس بدهیم که در ادامه این کار را انجام میدهیم.
در layout که می خواید spinner را لود کنید یک spinner همانند زیر تعریف کنید.

بعد از این کار در اکتیویتی مربوط آن را find می کنیم مثل زیر و کدهای load کردن spinner را قرار میدهیم.

در بالا setSelected تعیین می کند که آیا به صورت default مقدار checkbox ها true یا false باشد. و در مورد product_type_list که برای شما خطا دارد وارد مسیر res/values/ شده فایل strings.xml را باز کرده و همانند زیر یک آرایه در آنجا تعریف کنید.

 
 
موفق باشید.
 

مطالعه بیشتر