android switch casa 未定义,How to use switch-case in Android actionbar?

I'm working with a viewPager and I would like to have on action bar an item which opens new activities by cases, I mean, if the current image is 1, to open the Activity1, if it is the 2nd, then it should open the Activity2. Till now, I've created the menu which contains to items, and which opens new Activities, but i would like that one item to open more Activities by cases described upper. Thanks a lot !!!

MainActivity.java:

package com.descoper.rom;

import android.app.Activity;

import android.content.Intent;

import android.os.Bundle;

import android.os.Parcelable;

import android.support.v4.view.PagerAdapter;

import android.support.v4.view.PagerTitleStrip;

import android.support.v4.view.ViewPager;

import android.view.Gravity;

import android.view.Menu;

import android.view.MenuInflater;

import android.view.MenuItem;

import android.view.View;

import android.widget.ImageView;

import android.widget.LinearLayout;

import android.widget.Toast;

import android.view.View.OnClickListener;

public class MainActivity extends Activity {

private static int NUM_VIEWS = 46;

private MyPagerAdapter adapter;

private ViewPager pager;

private int[] pics = { R.drawable.casapoporului, R.drawable.transfagarasan,

R.drawable.transalpina, R.drawable.balealac,

R.drawable.barajulsiriu, R.drawable.bisericadesublac,

R.drawable.canionulscari, R.drawable.cascadacailor,

R.drawable.cascadaciucas, R.drawable.castelulbran,

R.drawable.castelulcorvinilor, R.drawable.castelulkaroly,

R.drawable.castelulpeles, R.drawable.castelulsturdza,

R.drawable.castrulroman, R.drawable.cazaneledunarii,

R.drawable.cazinoulconstanta, R.drawable.cetateabastionara,

R.drawable.cetateafagaras, R.drawable.cetateaprejmer,

R.drawable.cheilebicazului, R.drawable.cimitirulsapanta,

R.drawable.colibita, R.drawable.deltadunarii,

R.drawable.epavacostinesti, R.drawable.focurilevii,

R.drawable.hanulancutei, R.drawable.insulaovidiu,

R.drawable.laculalbastru, R.drawable.laculana,

R.drawable.laculbeului, R.drawable.laculbucura,

R.drawable.laculcapra, R.drawable.laculrosu, R.drawable.laculvidra,

R.drawable.laculvulturilor, R.drawable.mocanita,

R.drawable.parculcraiova, R.drawable.parcultimisoara,

R.drawable.pesteraghetarul, R.drawable.pesteraursilor,

R.drawable.piatabrasov, R.drawable.poduldumnezeu,

R.drawable.salinapraid, R.drawable.salinaturda,

R.drawable.sarmisegetuzaregia, R.drawable.sfinxulbucegi,

R.drawable.sibiu, R.drawable.vulcaniinoroiosi };

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

adapter = new MyPagerAdapter();

pager = (ViewPager) findViewById(R.id.myviewpager);

pager.setAdapter(adapter);

PagerTitleStrip pagerTitleStrip = (PagerTitleStrip) findViewById(R.id.titlestrip);

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

MenuInflater inflater = getMenuInflater();

inflater.inflate(R.menu.main, menu);

return super.onCreateOptionsMenu(menu);

}

private class MyPagerAdapter extends PagerAdapter {

String[] title = { "Casa poporului", "Transfagarasan", "Transalpina",

"Balea Lac", "Barajul Siriu", "Biserica de sub lac",

"Canionul Sapte scari", "Cascada Cailor", "Cascada Ciucas",

"Castelul Bran", "Castelul Corvinilor", "Castelul Karoly",

"Castelul Peles", "Castelul Sturdza", "Castelul Roman",

"Cazanele Dunarii", "Cazinoul din Constanta",

"Cetatea Bastioara", "Cetatea Fagaras",

"Biserica fortificata de la Prejmer", "Cheile Bicazului",

"Cimitirul vesel din Sapanta", "Lacul Colibita",

"Delta Dunarii", "Epava din Costinesti",

"Focurile Vii de la Luger", "Hanul Ancutei", "Insula Ovidiu",

"Lacul Albastru", "Lacul Sfanta Ana", "Lacul ochiul Beiului",

"Lacul Bucura", "Lacul Capra", "Lacul Rosu", "Lacul Vidra",

"Lacul Vulturilor", "Mocanita din Maramures",

"Parcul Nicolae Romanov din Craiove",

"Piata Operei din Timisoara", "Pestera Scarisoara",

"Pestera Ursilor", "Piata Sfatului din Brasov",

"Podul lui Dumnezeu", "Salina Praid", "Salina Turda",

"Cetatea Sarmizegetusa", "Sfinxul din Bucegi",

"Piata mare din Sibiu", "Vulcanii Noroiosi" };

@Override

public CharSequence getPageTitle(int position) {

return title[position];

}

@Override

public int getCount() {

return NUM_VIEWS;

}

/**

* Create the page for the given position. The adapter is responsible

* for adding the view to the container given here, although it only

* must ensure this is done by the time it returns from

* {@link #finishUpdate()}.

*

* @param container

* The containing View in which the page will be shown.

* @param position

* The page position to be instantiated.

* @return Returns an Object representing the new page. This does not

* need to be a View, but can be some other container of the

* page.

*/

@Override

public Object instantiateItem(View collection, int position) {

ImageView view = new ImageView(MainActivity.this);

view.setImageResource(pics[position]);

view.setOnClickListener(new OnClickListener() {

public void onClick(View v) {

Toast.makeText(MainActivity.this, "Page" + pics,

Toast.LENGTH_LONG).show();

}

});

((ViewPager) collection).addView(view, 0);

return view;

}

/**

* Remove a page for the given position. The adapter is responsible for

* removing the view from its container, although it only must ensure

* this is done by the time it returns from {@link #finishUpdate()}.

*

* @param container

* The containing View from which the page will be removed.

* @param position

* The page position to be removed.

* @param object

* The same object that was returned by

* {@link #instantiateItem(View, int)}.

*/

@Override

public void destroyItem(View collection, int position, Object view) {

((ViewPager) collection).removeView((ImageView) view);

}

@Override

public boolean isViewFromObject(View view, Object object) {

return view == ((ImageView) object);

}

/**

* Called when the a change in the shown pages has been completed. At

* this point you must ensure that all of the pages have actually been

* added or removed from the container as appropriate.

*

* @param container

* The containing View which is displaying this adapter's

* page views.

*/

@Override

public void finishUpdate(View arg0) {

}

@Override

public void restoreState(Parcelable arg0, ClassLoader arg1) {

}

@Override

public Parcelable saveState() {

return null;

}

@Override

public void startUpdate(View arg0) {

}

}

@Override

public boolean onOptionsItemSelected(MenuItem item) {

// Take appropriate action for each action item click

switch (item.getItemId()) {

case R.id.gallery:

startActivity(new Intent(MainActivity.this, Galerie.class));

break;

case R.id.ro:

startActivity(new Intent(MainActivity.this, Romania.class));

break;

}

return false;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值