action_bar menu만들기
menu_main
1. xml파일 생성
app - src - main - res - menu에 Menu리소스파일 만들기
2. 메뉴만들기(item)
// menu_main.xml
<?xml version ="1.0" encoding ="utf-8"?>
<menu xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
<!-- ActionBar -->
<item
android:id="@+id/menu_search"
android:icon="@android:drawable/ic_menu_search"
android:title="검색"
app:showAsAction="always|withText" />
<item
android:id="@+id/menu_chat"
android:icon="@android:drawable/sym_action_chat"
android:title="채팅"
app:showAsAction="always|withText" />
<item
android:id="@+id/menu_email"
android:icon="@android:drawable/sym_action_email"
android:title="이메일"
app:showAsAction="ifRoom" />
<item
android:id="@+id/action_setting"
android:title="세팅"
app:showAsAction="never" />
</menu>
아이콘 생성을 위한 코드입력
아이콘모음
MainActivity
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
//supportActionBar?.setDisplayShowTitleEnabled(false) // 타이틀바 없애기
}
// 메뉴아이콘 표시
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
menuInflater.inflate(R.menu.menu_main, menu)
return super.onCreateOptionsMenu(menu)
//return false // 메뉴아이콘 없애기
}
// 각 아이콘 누를때 효과(textView의 text값 바꾸기)
override fun onOptionsItemSelected(item: MenuItem): Boolean {
val textView:TextView = findViewById<TextView>(R.id.textView)
when(item?.itemId){
R.id.menu_search -> textView.text = "검색 클릭"
R.id.menu_chat -> textView.text = "채팅 클릭"
R.id.menu_email -> textView.text = "이메일 클릭"
R.id.action_setting -> textView.text = "세팅 클릭"
}
return super.onOptionsItemSelected(item)
}
}
결과
첫 기본화면
이메일 아이콘 클릭시 textView변경 (Hello World! -> 채팅 클릭)
Author And Source
이 문제에 관하여(action_bar menu만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@kucx1230/actionbar-menu만들기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)