2015-01-06 3 views
6

Toolbar을 appcompat 지원 라이브러리와 함께 사용하면 올바른 옵션 메뉴를 설정하지 않으면 홈 버튼이 작동하지 않는 것처럼 보입니다. 간단하고 늪지 표준 활동 onCreateOptionsMenu()에 설정 메뉴가있는 경우옵션 메뉴가 없다면 툴바 홈 버튼이 작동하지 않습니다

public class MyActivity extends ActionBarActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    setContentView(R.layout.some_page); 
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar); 
    ActionBar bar = getSupportActionBar(); 
    bar.setHomeButtonEnabled(true); 
    bar.setDisplayHomeAsUpEnabled(true); 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
    // getMenuInflater().inflate(R.menu.some_menu, menu); 
    return super.onCreateOptionsMenu(menu); 
    } 

    @Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()) { 
     case android.R.id.home: 
     onBackPressed() or finish() or whatever(); 
     break; 
    } 
    return super.onOptionsItemSelected(item); 
    } 
} 

onOptionsItemSelected()android.R.id.home 모든 권리를 호출됩니다 모든 괜찮습니다. 그러나 onCreateOptionsMenu()이 전혀 없거나 비어있는 경우 true을 반환하거나 super 함수를 호출하면 onOptionsItemSelected()이 전혀 호출되지 않으므로 홈 버튼을 클릭 할 기회가 없습니다. 심지어 onCreateOptionsMenu()에 빈 메뉴를 전달하려고했지만 도움이되지 않았습니다.

기능 옵션 메뉴가 필요없는 페이지에서 작동하는 홈 버튼을 사용할 수있는 대안이 있습니까?

+0

내가 지금 이걸 발견, 먼저 내가 *하지 * JB하지만 KK에이기 때문에 나의 관심을 미끄러 : http://stackoverflow.com/questions/26859841/homeasup-button-has-no-effect-in-android-4-2-2-with-appcompat-21-0-0?rq=1 –

답변

0

당신이 시도 할 수 있습니다 ..

toolbar.setNavigationOnClickListener(new OnClickListener() { 
@Override 
public void onClick(View v) { 
Intent intent =new Intent(Context,<Destination activity); 
startActivity(intent); 
} 
}); 

그것은 당신을 도울 것입니다 희망 ...

관련 문제