AndroidStudio 옵션 메뉴
7585 단어 안드로이드AndroidStudioKotlin
옵션 메뉴
옵션 메뉴는 アクションバー(アプリバー)
에 표시되는 메뉴입니다.アクションバー
에는 옵션 메뉴나 오버플로우 메뉴 등을 표시할 수 있습니다.
참조
옵션 메뉴 표시
옵션 메뉴를 표시하려면 다음과 같이 하십시오.
1, 옵션 메뉴에 대한 .xml 파일 만들기
2,.xml 파일에 전용 태그 작성
3, 활동에 onCreateOptionsMenu()メソッドを実装する
1, 옵션 메뉴에 대한 .xml 파일 만들기
menu 폴더를 마우스 오른쪽 버튼으로 클릭 > new > Menu Resouce File > OK
AndroidStudio에서는 리소스 파일 작성 전용의 기능이 있으므로, 이용한다.
2,.xml 파일에 전용 태그 작성
menuタグ
안에 하나의 선택에 대해 itemタグ
를 하나 기술합니다.itemタグ
에
∟android:id
∟app:showAsAction
∟android:title
의 3개의 속성은 반드시 기술이 필요
샘플 코드
menun.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/menuListOptionTeishoku"
app:showAsAction="never"
android:title="@string/menu_list_options_teishoku"/>
<item
android:id="@+id/menuListOptionCurry"
app:showAsAction="never"
android:title="@string/menu_list_options_curry"/>
</menu>
android:id:R 값으로 사용할 id
app:showAsAction:액션 바에 표시할지 여부 설정
∟showAsAction의 속성 값
속성 값
내용
never
그 선택은 오버플로 메뉴에 저장됩니다.
always
항상 액션 바에 표시됩니다. 다만, always로 하면, 화면 사이즈에 따라서는 약간 표시가 어긋나 버리는 일도 있으므로, ifRoom의 사용이 추천되고 있다.
ifRoom
액션 바에 표시할 여유가 있는 경우는 표시하고, 없는 경우는 오버플로우 메뉴에 저장한다.
android:title:선택사항 표시 문자열
Tips 메뉴 중첩
옵션 메뉴는 item 태그에 menu-item 태그의 조합을 추가로 설명하여 선택 사항을 중첩할 수 있습니다.
3, 활동에 "onCreateOptionsMenu () 메서드 구현
샘플 코드
MainActivity.kt override fun onCreateOptionsMenu(menu: Menu): Boolean {
//オプションメニュー用XMLファイルをインフレイト
menuInflater.inflate(R.menu.menu_options_menu_list, menu)
return true
}
inflate 메소드의 제 1 인수에는 해당 메뉴 .xml 파일의 R값을 지정한다.
컨텍스트 메뉴
컨텍스트 메뉴는 목록보기 등을 길게 누를 때 표시되는 메뉴입니다.
참조
컨텍스트 메뉴 표시
컨텍스트 메뉴는 옵션 메뉴와 거의 동일한 절차입니다.
다음 절차.
1, 컨텍스트 메뉴에 대한 .xml 파일 만들기
2,.xml 파일에 전용 태그 작성
3, 활동에 onCreateContextMenu()メソッド
구현
4, onCreate()로 컨텍스트 메뉴를 표시시키는 화면 부품 등록
1, 컨텍스트 메뉴에 대한 .xml 파일 만들기
옵션 메뉴와 동일합니다.
2,.xml 파일에 전용 태그 작성
이쪽도 옵션 메뉴와 거의 같습니다.
그러나 showAsAction 속성은 사용할 수 없습니다.
샘플 코드
menu_context_menu_list.xml<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/menuListContextInfo"
android:title="@string/menu_list_context_desc" />
<item
android:id="@+id/menuListContextOrder"
android:title="@string/menu_list_context_order" />
</menu>
3, 활동에 onCreateContextMenu() 메소드 구현
return 절이 필요하지 않습니다.
샘플 코드
MainActivity.kt //コンテキストメニュー
override fun onCreateContextMenu(menu: ContextMenu, view: View,
menuInfo: ContextMenu.ContextMenuInfo) {
//親クラスの同名のメソッドの呼び出し。
super.onCreateContextMenu(menu, view, menuInfo)
//コンテキストメニュー用xmlファイルをインフレイト
menuInflater.inflate(R.menu.menu_context_menu_list, menu)
//コンテキストメニューのヘッドタイトルを設定
menu.setHeaderTitle(R.string.menu_list_context_header)
}
4, onCreate()로 컨텍스트 메뉴를 표시시키는 화면 부품을 등록한다
컨텍스트 메뉴를 표시하는 뷰, 즉 길게 누르기를 감지하는 뷰를 미리 등록해야합니다.
MainActivity 내의 onCreate() 메소드내에 registerForContextMenu() 메소드를 기술.
인수는 컨텍스트 메뉴를 표시하는 화면 부품을 기술한다.
registerForContextMenu(lvMenu)
Reference
이 문제에 관하여(AndroidStudio 옵션 메뉴), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/nipp/items/e4bf38348343af5bdefc
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
<?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/menuListOptionTeishoku"
app:showAsAction="never"
android:title="@string/menu_list_options_teishoku"/>
<item
android:id="@+id/menuListOptionCurry"
app:showAsAction="never"
android:title="@string/menu_list_options_curry"/>
</menu>
override fun onCreateOptionsMenu(menu: Menu): Boolean {
//オプションメニュー用XMLファイルをインフレイト
menuInflater.inflate(R.menu.menu_options_menu_list, menu)
return true
}
컨텍스트 메뉴는 목록보기 등을 길게 누를 때 표시되는 메뉴입니다.
참조
컨텍스트 메뉴 표시
컨텍스트 메뉴는 옵션 메뉴와 거의 동일한 절차입니다.
다음 절차.
1, 컨텍스트 메뉴에 대한 .xml 파일 만들기
2,.xml 파일에 전용 태그 작성
3, 활동에
onCreateContextMenu()メソッド
구현4, onCreate()로 컨텍스트 메뉴를 표시시키는 화면 부품 등록
1, 컨텍스트 메뉴에 대한 .xml 파일 만들기
옵션 메뉴와 동일합니다.
2,.xml 파일에 전용 태그 작성
이쪽도 옵션 메뉴와 거의 같습니다.
그러나 showAsAction 속성은 사용할 수 없습니다.
샘플 코드
menu_context_menu_list.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/menuListContextInfo"
android:title="@string/menu_list_context_desc" />
<item
android:id="@+id/menuListContextOrder"
android:title="@string/menu_list_context_order" />
</menu>
3, 활동에 onCreateContextMenu() 메소드 구현
return 절이 필요하지 않습니다.
샘플 코드
MainActivity.kt
//コンテキストメニュー
override fun onCreateContextMenu(menu: ContextMenu, view: View,
menuInfo: ContextMenu.ContextMenuInfo) {
//親クラスの同名のメソッドの呼び出し。
super.onCreateContextMenu(menu, view, menuInfo)
//コンテキストメニュー用xmlファイルをインフレイト
menuInflater.inflate(R.menu.menu_context_menu_list, menu)
//コンテキストメニューのヘッドタイトルを設定
menu.setHeaderTitle(R.string.menu_list_context_header)
}
4, onCreate()로 컨텍스트 메뉴를 표시시키는 화면 부품을 등록한다
컨텍스트 메뉴를 표시하는 뷰, 즉 길게 누르기를 감지하는 뷰를 미리 등록해야합니다.
MainActivity 내의 onCreate() 메소드내에 registerForContextMenu() 메소드를 기술.
인수는 컨텍스트 메뉴를 표시하는 화면 부품을 기술한다.
registerForContextMenu(lvMenu)
Reference
이 문제에 관하여(AndroidStudio 옵션 메뉴), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/nipp/items/e4bf38348343af5bdefc텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)