ورود

View Full Version : کار با spinner در اندروید



ttrasn
دوشنبه 15 اردیبهشت 1393, 21:58 عصر
سلام
توی اندروید میخوام توی یک صفحه دوتا لیست spinner داشته باشم که وقتی اولی رو انتخاب کرد دومی آپدیت بشه و برحسب انتخاب اولی پر بشه.
بدون دیتا بیس و با چندتا فایل Xml .
لطفا دوستانی که راهکاری بلدن معرفی کنن.

poorman
سه شنبه 16 اردیبهشت 1393, 00:08 صبح
سلام

ابتدا دو تا spinner رو مقدار میدین و لیست مورد نظرتون رو بهشون اضافه میکنید مثل کد زیر


final Spinner spn1 = (Spinner) findViewById(R.id.spinner1);
String[] list1 = {"ali", "mahdi", "majid"};
ArrayAdapter<String> Adapter1 = new ArrayAdapter<String>(context, android.R.layout.simple_spinner_item, list1);
Adapter1.setDropDownViewResource(
android.R.layout.simple_spinner_dropdown_item);
spn1.setAdapter(Adapter1);
spn1.setSelection(0);




توی رویداد setOnItemSelectedListener اولی باید کد بنویسید و برحسب چیزی که انتخاب شده، spinner دوم رو آپدیت کنید


spn1.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {

switch (pos) {
case 0:
spn2.setSelection(2);
break;
case 1:
spn2.setSelection(1);
break;
case 2:
spn2.setSelection(3);
break;
}
}


@Override
public void onNothingSelected(AdapterView<?> arg0) {

}});



این یک نمونه ساده ست، که مثلا وقتی آیتم انتخابی اولی تغییر میکنه، با توجه به اون آیتم انتخاب شده دومی هم تغییر میکنه

حالا شما به جای این که آیتم رو تغییر بدی، آداپتر دومی رو تغییر بده، هر کار حال کردی انجام بده :چشمک: