프로그래밍 메모장(안드로이드 프로그래밍) |
해당글은 본인이 추후에 잊어버려도 다시 기억할 수 있도록 쓰는 메모장같은 형식의 글입니다.
(강의 글이 아님)
Toolbar 왼쪽에 버튼을 달기 |
액션바를 대체해서 툴바를 사용하고 있는데 보통 툴바에 버튼을 추가하게 되면
여기에 버튼이 추가되게 된다.
그래서 구글링을 한 결과 나처럼 좌측에 버튼을 넣고싶은 사람이 없는가 보다..
왜냐하면 그냥 슬라이드 메뉴를 사용하기 때문이다....
그래서 생각한것이 "뒤로가기 버튼(홈버튼)"을 원하는 버튼으로 대체하는 것이었다.
먼저 뒤로가기 버튼을 활성화 시킨다.
public class MainActivity extends AppCompatActivity {
// ...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// ...
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
// ↓툴바에 홈버튼을 활성화
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
// ↓툴바의 홈버튼의 이미지를 변경(기본 이미지는 뒤로가기 화살표)
getSupportActionBar().setHomeAsUpIndicator(R.drawable.ic_folder_open_white);
// ...
}
// ...
}
이렇게 활성화된 홈버튼과 적절한 이미지를 넣게되면
이렇게 좌측에 버튼이 생긴다.
이 버튼의 액션은 "
android.R.id.home" 인데 이것을 이용하여 적절한 액션을 정의하면 된다.
public class MainActivity extends AppCompatActivity {
// ...
// 메뉴를 연동하고
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
// ...
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
switch (id)
{
// ...
case android.R.id.home: {
// 해당 버튼을 눌렀을 때 적절한 액션을 넣는다.
return true;
}
}
return super.onOptionsItemSelected(item);
}
// ...
}
'Study > Android' 카테고리의 다른 글
[안드로이드] 자바 IO를 이용하여 데이터를 입출력할 때 MIUI에서 주의점 (0) | 2017.02.21 |
---|---|
[안드로이드] ADB를 무선으로 연결하기(하지만 완전한 무선은 아닌..) (0) | 2017.02.14 |
[안드로이드] ListView 갱신하기 (0) | 2017.02.03 |
[안드로이드] 파일경로 Uri를 String형의 Path로 변환하는 법 (0) | 2017.01.25 |
안드로이드 계산기 ver2 (Android 4.0.3(API 15) 기준)(소스 첨부) (4) | 2016.12.23 |