به نام خدا،در این جلسه می خواهیم با switch,case در لیست ویو آشنا بشیم.با استفاده از قابلیت switch,case می تونیم بین آیتم های مختلف لیست ویو مون حرکت کنیم و به هر آیتم رویداد خاصی رو تعریف کنیم.کار خیلی ساده ای پیشرو داریم تنها کافی کمی دقت کنیم تا به صورت کامل با نحوه کار آشنا بشیم.
برای شروع کار از کدهای جلسه دوم کار با لیست ویو استفاده خواهیم کرد(این لینک).در جلسه دوم از آموزش لیست ویو با اضافه کردن رویداد onListItemClick اشنا شدیم ،در این جلسه می خواهیم یک switch,case به این رویداد اضافه کنیم و بتونیم بین هر کدوم از ایتم هامون سوییچ کنیم.پس تنها کاری که ما باید بکینم اینه که در قسمت onListItemClick یک switch,case اضافه کرده و سپس برای هر کوم از ایتم هامون کار خاصی رو تعریف میکنیم.(کد های کامل برنامه).
/*
* آموزش برنامه نویسی اندروید
* Appinapps.com
*/
import android.app.ListActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
public class MainActivity extends ListActivity {
//تعریف یک رشته،نام گذاری و قرار دادن اطلاعات
String[] shahrList = {"tehran" , "shiraz" , "tabriz" , "esfahan" , "arak" , "zanjan"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// معرفی یک ارایه اداپتر و فراخوانی اطلاعات از استرینگ و ارسال اون به لیست ویو
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, shahrList);
//ست کردن اداپترمون بر روی لیست ویو
setListAdapter(adapter);
}
//متد ایتم کلیک
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
// TODO Auto-generated method stub
super.onListItemClick(l, v, position, id);
//دستور توست و گرفتن اطلاعات از استرینگ و نمایش به کاربر
//Toast.makeText(this, shahrList[position] +" :ra entekhab kardid!", Toast.LENGTH_SHORT).show();
/*
* با استفاده از switch می تونیم برای هرکدوم از ایتم های لیست ویو مون یک کار خاص رو در نظر بگیریم
*/
switch (position) {
case 0:
Toast.makeText(this,"ایتم یک کلیک شد", Toast.LENGTH_LONG).show();
break;
case 1:
Toast.makeText(this,"ایتم دو کلیک شد", Toast.LENGTH_LONG).show();
break;
case 2:
Toast.makeText(this,"ایتم سه کلیک شد", Toast.LENGTH_LONG).show();
break;
case 3:
Toast.makeText(this,"ایتم چهار کلیک شد", Toast.LENGTH_LONG).show();
break;
case 4:
Toast.makeText(this,"ایتم پنج کلیک شد", Toast.LENGTH_LONG).show();
break;
case 5:
Toast.makeText(this,"ایتم ششم کلیک شد", Toast.LENGTH_LONG).show();
break;
default:
break;
}
}
@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;
}
}
به همین راحتی.موفق باشید...