Android
Android - Toolbar icon 추가/생성하기
TechNote.kr
2016. 1. 29. 00:01
728x90
Android App을 보면 상단에 Toolbar를 흔히 볼수 있다. (간혹 없는 App들도 있지만 대체로 다 있다.)
그렇다면 저 bar에는 어떻게 icon을 추가하고 해당 icon에서 발생하는 touch event를 처리할 수 있을까?
[Icon이 없는 Toolbar]
[Icon을 생성한 Toolbar]
다른 여타 layout과 같이 xml 파일에 추가해 주면 된다.
res\menu\main.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_category"
app:showAsAction="ifRoom"
android:icon="@drawable/ic_folder_open_white_24dp"
android:title="@string/action_category"/>
<item
android:id="@+id/action_settings"
app:showAsAction="ifRoom"
android:icon="@drawable/ic_settings_white_24dp"
android:title="@string/action_settings"/>
</menu>
Icon은 전 article에 포스팅한 방법으로 확보하였다.
해당 Icon을 클릭 하였을 때 event는 다음 코드에서 처리할 수 있다.
public class MainActivity extends AppCompatActivity
implements NavigationView.OnNavigationItemSelectedListener {
...
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {// !!!!! Settings Icon을 눌렀을 때는 여기..return true;
} else if (id == R.id.action_category) {
// !!!!! Categories Icon을 눌렀을 때는 여기..
return true;
}
return super.onOptionsItemSelected(item);
}
728x90