뒤로 대신 도구 모음의 재질 "닫기"버튼
Google의 Inbox 앱에서 새 이메일을 작성하는 것을 보았습니다. 툴바에 뒤로 버튼 (화살표) 대신 "닫기"버튼이 있습니다 (그림 참조).
이것을 어떻게 달성 할 수 있습니까?
사용하다
this.getSupportActionBar().setHomeAsUpIndicator(R.drawable.ic_action_close);
이것을 달성하기 위해.
나만의 닫기 아이콘을 만들거나 GitHub에 설정된 머티리얼 디자인 아이콘 에서 가져올 수 있습니다. 또한이 줄을 위쪽 줄 앞에 추가하여 뒤로 화살표로 닫기 기능을 만듭니다.
this.getSupportActionBar().setDisplayHomeAsUpEnabled(true);
물론 지원 앱 바를 사용하는 경우 매니페스트에서 부모를 정의한 다음 onSupportNavigationUp () 을 재정의 해야합니다. 또한 아이콘 팩에 대한 편리한 사이트 ( https://www.google.com/design/icons/)로 이동하십시오.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.yourAwesomeLayout);
setupToolBar();
}
private void setupToolBar() {
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
if (toolbar == null) return;
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setHomeAsUpIndicator(R.drawable.ic_close_white_24dp);
}
@Override
public boolean onSupportNavigateUp() {
finish(); // close this activity as oppose to navigating up
return false;
}
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
toolbar.setTitle("Search");
toolbar.setNavigationIcon(R.drawable.abc_ic_clear_mtrl_alpha);
setSupportActionBar(toolbar);
늦은 답변 죄송합니다. 나는 당신에게 가장 쉬운 해결책을 찾았습니다 . 위의 모든 대답은 나를 위해 작동하지 않습니다 ( because i want to use toolbar not actionBar due to theming
). 따라서 xml 레이아웃을 통해 닫기 버튼을 추가하십시오. 그리고 그것은 작동합니다.
다음은 toolbar (v7)에 닫기 버튼을 추가하는 xml 구문입니다.
app:navigationIcon="@drawable/ic_close_black_24dp"
매니페스트에서 부모 활동을 정의하는 대안은 다음 예와 같이 onOptionsItemSelected 메서드에서 수행 할 작업을 처리하는 것입니다.
@Override
public boolean onOptionsItemSelected(MenuItem item){
switch (item.getItemId()) {
// Respond to the action bar's Up/Home/back button
case android.R.id.home:
finish();
break;
}
return super.onOptionsItemSelected(item);
}
스타일을 정의 할 수 있습니다.
<style name="Theme.Toolbar.Clear">
<item name="toolbarNavigationIcon">@drawable/abc_ic_clear_mtrl_alpha</item>
</style>
테마에서 사용하십시오.
<style name="Theme.Clear">
<item name="toolbarTheme">@style/Theme.Toolbar.Clear</item>
</style>
참고 URL : https://stackoverflow.com/questions/27125340/material-close-button-in-toolbar-instead-of-back
'developer tip' 카테고리의 다른 글
X“”가있는 빈 문자열 테스트 (0) | 2020.10.19 |
---|---|
knockout.js-DOM 요소에서 ViewModel 가져 오기 (0) | 2020.10.19 |
SQL Developer에서 저장 프로 시저를 실행 하시겠습니까? (0) | 2020.10.19 |
Dapper는 SQL 2008 테이블 반환 매개 변수를 지원합니까? (0) | 2020.10.19 |
string :: npos는 무엇을 의미합니까? (0) | 2020.10.18 |