به نام خدا،در این جلسه به نابه درخواست برخی از کاربران سایت مبنی بر نوشتن یک آموزش در رابطه با اضافه کردن آیتم به اکشن بار اقدام خواهیم کرد.نحوه اضافه کردن آیتم های متعدد به اکشن بار کار بسیار ساده ای هست.برای اینکار لازمه که در پوشه Menu فایل Main اجرا کنیم و ایتم های رو که می خواهیم اکشن بارمون داشته باشه رو بهش اضافه می کنیم.کدهای xml زیر دقت کنید.
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/phone"
android:title="@string/phone"
android:icon="@drawable/phone"
android:showAsAction="ifRoom|withText"
/>
<item
android:id="@+id/computer"
android:title="@string/computer"
android:icon="@drawable/computer"
android:showAsAction="ifRoom|withText"
/>
<item
android:id="@+id/gamepad"
android:title="@string/gamepad"
android:icon="@drawable/gamepad"
android:showAsAction="ifRoom|withText"
/>
<item
android:id="@+id/camera"
android:title="@string/camera"
android:icon="@drawable/camera"
android:showAsAction="ifRoom|withText"
/>
<item
android:id="@+id/video"
android:title="@string/video"
android:icon="@drawable/video"
android:showAsAction="ifRoom|withText"
/>
<item
android:id="@+id/email"
android:title="@string/email"
android:icon="@drawable/email"
android:showAsAction="ifRoom|withText"
/>
</menu>
در کدهای بالا،ما یک تگ <item> داریم که در برگیرنده هرکدوم از آیتم های است که ما میخواهیم در اکشن بار نمایش داده بشه.تمامی این تگ ها از خصوصیاتی مثل:id,title,icon و showAsAction بهره میبرند.خاصیت showAsAction نحوه نمایش ایتم رو به اکشن بار میده.خاصیت های آیکون و تایتل برای نمایش یک تصویر و عنوان آیتم ما استفاده بشه.در مرحله بعدی باید کدهای رو به کلاس MainActivity.java اضافه کنیم تا آیتها در اکشن بار نمایش داده بشه،تنها کافیه که کدهای زیر رو به برنامه تون اضافه کنید.(کدهای کامل MainActivity.java).
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.items, menu);
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
super.onOptionsItemSelected(item);
switch(item.getItemId()){
case R.id.phone:
Toast.makeText(getBaseContext(), "You selected Phone", Toast.LENGTH_SHORT).show();
break;
case R.id.computer:
Toast.makeText(getBaseContext(), "You selected Computer", Toast.LENGTH_SHORT).show();
break;
case R.id.gamepad:
Toast.makeText(getBaseContext(), "You selected Gamepad", Toast.LENGTH_SHORT).show();
break;
case R.id.camera:
Toast.makeText(getBaseContext(), "You selected Camera", Toast.LENGTH_SHORT).show();
break;
case R.id.video:
Toast.makeText(getBaseContext(), "You selected Video", Toast.LENGTH_SHORT).show();
break;
case R.id.email:
Toast.makeText(getBaseContext(), "You selected EMail", Toast.LENGTH_SHORT).show();
break;
}
return true;
}
سورس آماده این پروژه را از این لینک دانلود کنید.