그림 이모티콘 선택 도구

그림 이모티콘 선택 도구는 최신 디자인과 분위기, 최신 그림 이모티콘, 사용 편의성을 제공하는 UI 솔루션입니다. 사용자가 그림 이모티콘과 변형을 둘러보고 선택할 수 있습니다. 또는 최근에 사용한 그림 이모티콘 중에 선택할 수 있습니다.

그림 1. 그림 이모티콘 선택 도구
를 통해 개인정보처리방침을 정의할 수 있습니다.
를 통해 개인정보처리방침을 정의할 수 있습니다.

이 라이브러리를 사용하면 다양한 출처의 앱이 포용적이고 개발자가 앱을 빌드하거나 통합하지 않고도 처음부터 자체 이모티콘 선택 도구를 유지관리할 수 있습니다.

기능

그림 이모티콘 선택 도구에는 다음과 같은 기능이 있습니다.

최신 그림 이모티콘

새로 출시된 그림 이모티콘은 그림 이모티콘 선택 도구에 선택적으로 포함됩니다. 이모티콘 선택 도구 라이브러리는 여러 Android 버전 및 기기에서 호환됩니다.

고정 변형

그림 이모티콘을 길게 눌러 다양한 성별이나 피부색과 같은 변형 메뉴를 표시합니다. 선택한 대안은 그림 이모티콘 선택 도구에 저장되며, 기본 패널에서 선택한 대안이 사용됩니다.

이 기능을 통해 사용자는 탭 한 번으로 선호하는 그림 이모티콘 변형을 전송할 수 있습니다.

그림 이모티콘 변형
그림 2. 그림 이모티콘 변형입니다.

최근 이모티콘

최근 이모티콘
그림 3. 최근 이모티콘

RecentEmojiProvider최근 사용 카테고리 라이브러리에는 가장 일반적인 사용 사례를 충족하는 기본 최근 그림 이모티콘 제공자가 있습니다.

  • 선택한 모든 그림 이모티콘은 공유 환경설정에서 앱별로 저장됩니다.
  • 선택 도구에는 중복 제거된 선택한 그림 이모티콘이 최대 3개 행 역순으로 표시됩니다.

이 기본 동작으로 충분하다면 setRecentEmojiProvider()를 사용할 필요가 없습니다.

그러나 제공자 동작을 맞춤설정해야 할 수 있습니다. 다음은 몇 가지 일반적인 시나리오입니다.

  • 사용자 계정별로 선택한 이모티콘을 다르게 저장하려고 합니다.
  • 공유 환경설정이 아닌 데이터 저장소를 사용하려고 합니다.
  • 빈도순으로 최근 이모티콘을 표시하려고 합니다.

그런 다음 RecentEmojiProvider 인터페이스를 구현하고 setRecentEmojiProvider()를 사용하여 설정할 수 있습니다.

방향 선택기

그림 이모티콘 15.1부터 그림 이모티콘 선택 도구에서 사용할 수 있습니다. 사용자는 양방향 전환 버튼을 탭하여 왼쪽 및 오른쪽 버전의 그림 이모티콘 간에 전환할 수 있습니다.

양방향 왼쪽 이모티콘

그림 4. 양방향 이모티콘이 왼쪽을 향하고 있습니다.

양방향 오른쪽 이모티콘

그림 5. 오른쪽을 바라보는 양방향 그림 이모티콘

여러 사람에게 표시되는 그림 이모티콘 선택기

사용자는 이모티콘 커플을 길게 터치하여 여러 사람이 선택한 이모티콘을 표시할 수 있습니다.

이모티콘 커플 길게 터치

그림 6. 그림 이모티콘 쌍을 길게 터치하여 여러 사람의 그림 이모티콘 선택을 표시합니다.

왼쪽 그림 이모티콘 사람 탭

그림 7. 왼쪽 절반 그림 이모티콘의 사람을 선택합니다.

오른쪽 사람 그림 이모티콘을 탭합니다.

그림 8. 오른쪽 절반의 그림 이모티콘 사람을 선택합니다.

사용자가 그림 7 및 8과 같이 이모티콘 커플의 왼쪽 또는 오른쪽 이모티콘 사람을 선택하면 선택기에 오른쪽 하단에 미리보기가 표시됩니다. 사용자는 이모티콘 커플의 양쪽을 모두 선택한 후 미리보기를 선택할 수 있습니다. 맞춤 이모티콘을 구성할 수 있습니다.

EmojiCompat와의 호환성

사용 설정하면 EmojiCompat 인스턴스가 그림 이모티콘 선택 도구에서 사용되어 최대한 많은 그림 이모티콘을 렌더링합니다. 하지만 그림 이모티콘 선택 도구에는 EmojiCompat가 필요하지 않습니다.

기본 요건

앱이 Android 5.0(API 수준 21) 이상을 타겟팅해야 합니다.

라이브러리 사용

  1. 앱의 build.gradle 파일에서 androidx.emoji2:emojipicker:$version를 가져옵니다.

    dependencies {
        implementation "androidx.emoji2:emojipicker:$version"
    }
    
  2. 그림 이모티콘 선택 도구 뷰를 확장하고 원하는 경우 emojiGridRowsemojiGridColumns를 설정합니다.

    • emojiGridColumns의 기본값은 9입니다.
    • 행 수는 상위 뷰의 높이와 emojiGridColumns
    • emojiGridRows에 부동 소수점 값을 사용하여 사용자가 스크롤하여 더 많은 그림 이모티콘을 볼 수 있음을 나타냅니다.
    <androidx.emoji2.emojipicker.EmojiPickerView
        android:id="@+id/emoji_picker"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:emojiGridColumns="9" />
    
    val emojiPickerView = EmojiPickerView(context).apply {
        emojiGridColumns = 15
        layoutParams = ViewGroup.LayoutParams(
            ViewGroup.LayoutParams.MATCH_PARENT,
            ViewGroup.LayoutParams.MATCH_PARENT
        )
    }
    
    findViewById<ViewGroup>(R.id.emoji_picker_layout).addView(emojiPickerView)
    
  3. setOnEmojiPickedListener()를 사용하여 선택한 그림 이모티콘을 뷰에 추가합니다. 예를 들어 EditText에 추가하려면 다음을 실행합니다.

    emojiPickerView.setOnEmojiPickedListener {
        findViewById<EditText>(R.id.edit_text).append(it.emoji)
    }
    
  4. 원하는 경우 RecentEmojiProvider를 설정합니다. 구현 예시는 샘플 앱을 참고하세요.

  5. 원하는 경우 스타일을 맞춤설정합니다. 나만의 스타일을 만들어 공통 테마 재정의하기 속성을 사용하고 EmojiPickerView에 스타일을 적용합니다. 예를 들어 colorControlNormal를 재정의하면 카테고리 아이콘 색상이 변경됩니다.

    <style name="CustomStyle" >
        <item name="colorControlNormal">#FFC0CB</item>
    </style>
    <androidx.emoji2.emojipicker.EmojiPickerView
        android:id="@+id/emoji_picker"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:theme="@style/CustomStyle"
        app:emojiGridColumns="9" />
    

샘플 앱

그림 이모티콘 선택 도구 샘플 앱에서는 기본 사용 사례를 살펴보고 다음과 같은 추가 시나리오가 적용됩니다.

  • emojiGridRows 또는 emojiGridColumns가 재설정될 때 레이아웃 다시 계산
  • 빈도별로 정렬되는 재정의된 최근 그림 이모티콘 제공자입니다.
  • 추가 스타일 맞춤설정