برگرداندن مقدار Spinner
سلام به همه دوستاااااااااااااااااااااااااااااان
یک Spinner ساختم که کاربر بتونه انتخاب کنه .
چطور میشه مقدار Spinner رو داخل یک متغیر String ریخت ؟
با کد زیر می تونید در رویداد setOnItemClickListener اسپینر، مقدار اون رو بخونین:
spinner.getSelectedItem().toString()
myspinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long id) {
if (id == 0)
{
///اینجا میتونی یه مقداری را به یک متغیر نسبت بدی
// x = "ایتم اول "
} else if (id == 1)
{
// x = "ایتم دوم "
}
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
}
});
setOnItemSelectedListener باید از این متد استفاده کنی همینطور که دوست عزیز گفتن..ولی در صورتی که بخواهی این مقدار string را در جایی دیگر استفاده کنی دیگه نمیتونی از return استفاده کنی پس برای اینکه کاملا مستقل از اکتیویتیت باشه اونا تو یه کلاس جدید تعریف
ublic class ActivitySpinerr extends Activity {
public String sp_string;
public int i = 0;
public String spinner(final String[] stringg, final Spinner spinner) {
final ArrayAdapter<String> adapter = new ArrayAdapter<String>(G.context, android.R.layout.simple_dropdown_item_1line, stringg);
adapter.setDropDownViewResource(android.R.layout.
simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
spinner.setSelection(i);
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1, int position, long arg3) {
sp_string = spinner.getSelectedItem().toString();
i = position;
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
}
});
return sp_string;
}
و داخل اکتویتی که بخواهیم میگیریمش
final ActivitySpinerr test = new ActivitySpinerr();
String sample= test.spinner(arraylist string, spinner);
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .