Alert
지정된 제목과 메시지로 알림 대화상자를 표시한다.
선택적으로 버튼 목록을 제공할 수 있다. 버튼을 탭하면 해당 onPress 콜백이 실행되고 알림이 사라진다. 기본적으로 '확인' 버튼 하나만 표시된다.
이 API는 Android와 iOS 모두에서 동작하며 정적 알림을 표시할 수 있다. 사용자에게 정보 입력을 요청하는 알림은 iOS에서만 사용 가능하다.
예제
iOS
iOS에서는 원하는 수의 버튼을 지정할 수 있다. 각 버튼은 스타일을 지정하거나 강조 표시를 할 수 있다. 사용 가능한 옵션은 AlertButtonStyle 열거형과 AlertButton의 isPreferred
필드로 표현된다.
Android
Android에서는 최대 세 개의 버튼을 지정할 수 있다. Android에서는 중립(neutral), 부정(negative), 긍정(positive) 버튼이라는 개념이 있다:
- 버튼을 하나만 지정하면 '긍정' 버튼이 된다 (예: '확인')
- 두 개의 버튼은 '부정', '긍정' 버튼이 된다 (예: '취소', '확인')
- 세 개의 버튼은 '중립', '부정', '긍정' 버튼이 된다 (예: '나중에', '취소', '확인')
Android에서 알림 창은 창 바깥을 탭하여 닫을 수 있다. 이 기능은 기본적으로 비활성화되어 있으며, cancelable
속성을 true
로 설정한 AlertOptions 매개변수를 제공하여 활성화할 수 있다. 예를 들어:{cancelable: true}
options
매개변수 내에 onDismiss
콜백 속성을 제공하여 취소 이벤트를 처리할 수 있다.
예제 Android
참조
메서드
alert()
tsx
static alert (
title: string,
message?: string,
buttons?: AlertButton[],
options?: AlertOptions,
);
매개변수:
이름 | 타입 | 설명 |
---|---|---|
title 필수 | string | 다이얼로그의 제목. null 이나 빈 문자열을 전달하면 제목이 숨겨진다. |
message | string | 다이얼로그 제목 아래에 표시되는 선택적 메시지. |
buttons | AlertButton[] | 버튼 설정을 포함하는 선택적 배열. |
options | AlertOptions | 다이얼로그 설정을 위한 선택적 옵션. |
prompt()
iOS
tsx
static prompt: (
title: string,
message?: string,
callbackOrButtons?: ((text: string) => void) | AlertButton[],
type?: AlertType,
defaultValue?: string,
keyboardType?: string,
);
텍스트 입력을 위한 알림창 형태의 프롬프트를 생성하고 표시한다.
매개변수:
이름 | 타입 | 설명 |
---|---|---|
title Required | string | 대화창의 제목. |
message | string | 텍스트 입력 필드 위에 표시되는 선택적 메시지. |
callbackOrButtons | function AlertButton[] | 함수를 전달하면 사용자가 '확인'을 탭할 때 프롬프트의 값과 함께 호출된다.(text: string) => void 배열을 전달하면 배열 내용에 따라 버튼이 구성된다. |
type | AlertType | 텍스트 입력 필드를 구성한다. |
defaultValue | string | 텍스트 입력 필드의 기본값. |
keyboardType | string | 첫 번째 텍스트 필드의 키보드 타입 (존재할 경우). TextInput의 keyboardTypes 중 하나. |
options | AlertOptions | 선택적 알림창 구성 옵션. |
타입 정의
AlertButtonStyle iOS
iOS 알림 버튼 스타일을 정의한다.
타입 |
---|
enum |
상수:
값 | 설명 |
---|---|
'default' | 기본 버튼 스타일이다. |
'cancel' | 취소 버튼 스타일이다. |
'destructive' | 삭제 버튼 스타일이다. |
AlertType iOS
iOS 알림 타입을 정의한다.
타입 |
---|
enum |
상수:
값 | 설명 |
---|---|
'default' | 입력 필드가 없는 기본 알림 |
'plain-text' | 일반 텍스트 입력 알림 |
'secure-text' | 보안 텍스트 입력 알림 |
'login-password' | 로그인 및 비밀번호 입력 알림 |
AlertButton
알림 창에 표시되는 버튼의 설정을 설명하는 객체다.
타입 |
---|
객체 배열 |
객체 속성:
이름 | 타입 | 설명 |
---|---|---|
text | string | 버튼에 표시될 텍스트 |
onPress | function | 버튼이 눌렸을 때 실행될 콜백 함수 |
style iOS | AlertButtonStyle | 버튼 스타일, 안드로이드에서는 이 속성이 무시됨 |
isPreferred iOS | boolean | 버튼을 강조할지 여부, 안드로이드에서는 이 속성이 무시됨 |
AlertOptions
타입 |
---|
object |
속성:
이름 | 타입 | 설명 |
---|---|---|
cancelable Android | boolean | 알림 박스 외부를 탭하여 알림을 닫을 수 있는지 여부를 정의한다. |
userInterfaceStyle iOS | string | 알림에 사용할 인터페이스 스타일을 지정한다. light 또는 dark 로 설정할 수 있으며, 기본값은 시스템 기본 스타일이다. |
onDismiss Android | function | 알림이 닫힐 때 실행되는 콜백 함수이다. |