티스토리 뷰

반응형

Ⅰ. 메뉴

메뉴는 사용자가 여러 개 중 하나를 선택하도록 하여 사용자의 명령을 받아들이는 간편한 방식이다.

안드로이드의 메뉴는 옵션메뉴컨텍스트 메뉴로 구분된다.

ⅰ. 옵션메뉴

ⅰ.메뉴 XML 파일을 생성한 후 Java에서 호출하는 방법

 

더보기

옵션 메뉴 설정 순서(XML 파일 이용)

 

1. 메뉴 폴더 생성 및 메뉴 XML 파일 생성 편집

(메뉴코딩)

 

2. Java 코딩:

onCreateOptionsMenu() 메소드 오버라이딩

(메뉴 파일 등록)

 

3. Java 코딩:

onOptionsItemSelected() 메소드 오버라이딩

(메뉴 선택 시 동작할 내용 코딩)

 

메뉴 XML파일 형식

<menu>
<item
android:id="@+id/항목1 아이디"
android:title="항목1 제목"/>

<item
android:id="@+id/항목2 아이디"
android:title="항목2 제목"/>
</menu>

 

Activity 클래스 
public boolean onOptionsItemSelected(MenuItem item){
if (item.getItemId() == R.id.항목1아이디){
항목을 실행했을 때 실행할 코드
return true;
} else if (item.getItemId() == R.id.항목2아이디){
항목을 실행했을 때 실행할 코드
return true;
}
return false;
}

 

더보기

* 인플레이터

정적으로 존재하는 XML 파일을 Java 코드에 접근하여 실제 객체로 만들어 사용하는 것

 

ⅱ. XML파일 없이 Java 코드만으로 메뉴를 생성하는 방법

 

더보기

onCreateOptionsMenu() 메소드 안에서 메뉴 XML 파일에 접근하는 대신에 직접 menu.add() 메소드로 메뉴 항목을 추가하는 것이다.

 

@Override

public boolean onCreateOptionMenu(Menu menu){

super.onCreateOptionMenu(menu);

MenuInflater = getMenuInflater();

inflater.inflater(R.menu.메뉴XML아이디, menu);

return true;

}

return false;

}

 

더보기

public boolean onOptionsltemSelected(Menultem item) {
if (item.getltemld() == R.id.항목1아이디){
return true;
else if (item.getltemld() == R.id.항목2아이디){
return true;

}
return false;

}


ⅱ. 컨텍스트 메뉴

 

더보기

컨텍스트 메뉴 설정 순서(XML 파일 이용)

 

onCreate() 메소드에서 컨텍스트 메뉴를 나타낼 위젯을 registerForContextMenu()로 등록해야한다.

 

1. 메뉴 폴더 생성 및 위젯의 메뉴 XML 파일 생성 편집

(메뉴코딩)

 

2. Java 코딩:

onCreate()안에 registerForContextMenu()로 등록

(메뉴를 사용할 위젯 등록)

 

3. Java 코딩:

onCreateContextMenu() 메소드 오버라이딩

(메뉴 파일 등록)

 

4. Java 코딩:

onContextItemSelected() 메소드 오버라이딩

(메뉴 선택 시 동작할 내용 코딩)

 

 


Ⅱ. 토스트

토스트는 사용자가 인식해야 할 작은 메시지를 보여줄 때 사용하면 편리하며 프로그래머가 디버깅 용도로 사용하기에도 적당하다.

 

더보기

Toast.makeText(Context context, String message, int duration).show();

 

Context는 현재 액티비티(화면)을 표시하기 위해 this를 주로 사용한다.

버튼을 클릭했을 때 내부 클래스에서 토스트를 출력하기 위해 예외적으로 '액티비티명. this'를 사용했다.

duration은 화면에 나타나는 시간인데  Toast.LENGTH_LONG이나 Toast.LENGTH_SHORT 중 하나를 사용한다. 마지막에는 생성된 토스트를 화면에 보여주기 위해 show() 메소드를 사용했다.

 

 

Toast.setGravity(int gravity, int xOffset, int yOffset);

 

gravity에는 화면의 상단, 중앙, 하단 등을 지정하고 xOffset과 yOffset은 떨어진 거리를 나타낸다.

 

Ⅲ. 대화상자

화면에 메시지를 나타낸 후 확인이나 취소 같은 사용자의 선택을 받아들이는 경우에 사용자가 어떤 선택을 하는 것이 주요 목적이다. 

더보기

 

1. 대화상자 생성

AlertDialog.Builder클래스로 생성

 

2. 용도에 따른 설정

setTitle() : 제목 설정

setMassage() : 내용 입력

setIcon() : 아이콘 설정

setPositiveButton() : <OK> 버튼

setNegativeButton() : <Cancle> 버튼

setItems() : 목록출력

setSingleChoiceItems : 라디오버튼 목록 출력

setMultiChoiceItems : 체크박스 목록 출력

 

3. 대화상자 화면 출력

show()

 

 

반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함