2016-07-23 5 views
-1

Вместо того, чтобы использовать тост, я хочу использовать на прослушивании кликов в пунктах меню, и мы можем использовать фрагменты в этом случае это следующий код, в который я хочу добавить по щелчку, поэтому я могу открыть в новом действииКак использовать при прослушивании кликов по пунктам меню?

// Инициирование меню XML-файл (menu.xml)

@Override 
    public boolean onCreateOptionsMenu(Menu menu) 
    { 
     MenuInflater menuInflater = getMenuInflater(); 
     menuInflater.inflate(R.layout.menu, menu); 
     return true; 
    } 

    /** 
    * Event Handling for Individual menu item selected 
    * Identify single menu item by it's id 
    * */ 
    @Override 
    public boolean onOptionsItemSelected(MenuItem item) 
    { 

     switch (item.getItemId()) 
     { 
     case R.id.menu_bookmark: 
      // Single menu item is selected do something 
      // Ex: launching new activity/screen or show alert message 
      Toast.makeText(AndroidMenusActivity.this, "Bookmark is Selected", Toast.LENGTH_SHORT).show(); 
      return true; 

     case R.id.menu_save: 
      Toast.makeText(AndroidMenusActivity.this, "Save is Selected", Toast.LENGTH_SHORT).show(); 
      return true; 

     case R.id.menu_search: 
      Toast.makeText(AndroidMenusActivity.this, "Search is Selected", Toast.LENGTH_SHORT).show(); 
      return true; 

     case R.id.menu_share: 
      Toast.makeText(AndroidMenusActivity.this, "Share is Selected", Toast.LENGTH_SHORT).show(); 
      return true; 

     case R.id.menu_delete: 
      Toast.makeText(AndroidMenusActivity.this, "Delete is Selected", Toast.LENGTH_SHORT).show(); 
      return true; 

     case R.id.menu_preferences: 
      Toast.makeText(AndroidMenusActivity.this, "Preferences is Selected", Toast.LENGTH_SHORT).show(); 
      return true; 

     default: 
      return super.onOptionsItemSelected(item); 
     } 
    }  

} 
+0

Возможный дубликат [Как начать активность в Android 2.1] (http://stackoverflow.com/questions/3720581/how-to-start-activity-in-android-2-1) – Divers

ответ

1

Да, вы можете сделать это, просто добавляя Intent против каждого пункта меню в случае переключения. Посмотрите на ниже фрагмент кода для справки:

@Override 
public boolean onOptionsItemSelected(MenuItem item) 
{ 

    switch (item.getItemId()) 
    { 
    case R.id.menu_bookmark: 

     // Ex: launching new activity/screen or show alert message 

     Intent intent = new Intent(yourActivity.this, NextActivity.class) 
     startActivity(intent); 
     return true; 

    default: 
     return super.onOptionsItemSelected(item); 
    } 
}  
+0

Спасибо, майан, это сработало –

0
@Override 
public boolean onOptionsItemSelected(MenuItem item) 
{ 

    switch (item.getItemId()) 
    { 
    case R.id.menu_bookmark: 

     Intent intent = new Intent(currentactivity.this, toactivity.class) 
     startActivity(intent); 

     return true; 

    case R.id.menu_save: 
     Intent intent = new Intent(currentactivity.this, toactivity.class) 
     startActivity(intent); 
     return true; 

    case R.id.menu_search: 
     Intent intent = new Intent(currentactivity.this, toactivity.class) 
     startActivity(intent); 
     return true; 

    case R.id.menu_share: 
     Intent intent = new Intent(currentactivity.this, toactivity.class) 
     startActivity(intent); 
     return true; 

    case R.id.menu_delete: 
     Intent intent = new Intent(currentactivity.this, toactivity.class) 
     startActivity(intent); 
     return true; 

    case R.id.menu_preferences: 
     Intent intent = new Intent(currentactivity.this, toactivity.class) 
     startActivity(intent); 
     return true; 

    default: 
     return super.onOptionsItemSelected(item); 
    } 
}  

Intent Вы должны использовать намерение для перехода от одного экрана к другому

Intent intent = new Intent(currentactivity.this,towhichactivityyouwantmove.class) 
    startActivity(intent);