2015-04-05 3 views
0

Если я нажимаю клавишу меню меню, она запускается дважды во всех действиях моего приложения. Я пытался переопределить onKeyUp и onKeyDown, но не использовал никаких предложений относительно того, почему это происходит? Спасибо заранее кода идет как это ..Кнопка меню запускается дважды android

public class MainActivity extends ActionBarActivity { 
    private MainActivityDrawer mainActivityDrawer; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     Toolbar toolbar = (Toolbar) findViewById(R.id.app_bar); 
     setSupportActionBar(toolbar); 
     getSupportActionBar().setDisplayShowHomeEnabled(true); 
     mainActivityDrawer = (MainActivityDrawer) getSupportFragmentManager().findFragmentById(R.id.fragment_main_activity_drawer_in); 
     mainActivityDrawer.setUp(R.id.fragment_main_activity_drawer_in, (DrawerLayout) findViewById(R.id.mainDrawer1), toolbar); 
     new clicklisteners().execute(); 
     DrawerLayout drawerLayout = ((DrawerLayout) (findViewById(R.id.mainDrawer1))); 
     drawerLayout.setStatusBarBackground(R.color.PrimaryColorDark); 
     registerReceiver(err, new IntentFilter("ERROR_LOG_BUTTON_CLICKED")); 
     //toolbar.setOnKeyListener(this); 
    } 

    @Override 
    public boolean onKeyMultiple(int keyCode, int repeatCount, KeyEvent event) { 

     return false; 
    } 

    @Override 
    public boolean onKeyDown(int keyCode, KeyEvent event) { 
     return false; 
    } 

    @Override 
    public boolean onKeyUp(int keyCode, KeyEvent event) { 
     if(event.getAction()==KeyEvent.ACTION_UP) 
     { 
      if(event.getKeyCode()==KeyEvent.KEYCODE_MENU) 
      { 
       ShowToast("Hello"); 
       return true; 
      } 
     } 
     if(event.getKeyCode()==KeyEvent.KEYCODE_BACK) 
     { 
      if(mainActivityDrawer.isOpened()) 
      { 
       mainActivityDrawer.close(); 
      } 
      else 
      { 
       finish(); 
      } 
     } 
     return false; 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     MenuInflater inflater=getMenuInflater(); 
     return super.onCreateOptionsMenu(menu); 
    } 

    @Override 
    public boolean onPrepareOptionsMenu(Menu menu) { 
     return super.onPrepareOptionsMenu(menu); 
    } 

    @Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
     return super.onOptionsItemSelected(item); 
    } 
    ...... 
} 
+1

, пожалуйста, покажите нам некоторый код. задавая неопределенный вопрос, никогда не бывает полезным. –

+0

Я разместил код моего MainActivity –

+0

Что это такое: 'new clicklisteners(). Execute();' – sschrass

ответ

0

кажется библиотека «com.android.support:appcompat-v7:22.0.0» имеет проблемы с кнопкой меню, когда я сделал, что v7: 22.0.0 to v7: 21.0.0 клавиша меню работает правильно

+0

22.1.1 все еще имеет проблему – Youngjae

Смежные вопросы