Teclado de discagem

  • Atividade do anfitrião: TelecomActivity
  • Fragmento: DialpadFragment

Modo paisagem

Disposição

Atualizar @layout/dialpad_fragment

Tela do teclado de discagem

Figura 1. Tela do teclado de discagem

Componente [id:]ClassName Propriedade Valor
keypad: KeypadFragment width Decidido pela altura, largura e preenchimento dos botões principais
altura
dialpad_info: FrameLayout height Igual à altura do teclado
width O mesmo que altura
divider: View layout_constraintGuide_percent 0.5

Teclado

  • Fragmento. KeypadFragment
  • Disposição. @layout/keypad
  • Teclado

    Figura 2. Teclado

    Componente [id:]ClassName Propriedade Valor
    Botões do teclado app:numberText 1,2,3,4,5,6,7,8,9,*,0,#
    app:letterText "",ABC,DEF,GHI,JKL,MNO,PQRS,TUV,WXYZ,"",+,""
    style @style/KeypadButtonStyle
    Layout Corrente embalada verticalmente e horizontalmente

Divisores

Atualize @layout/keypad_dividers . Não use divisórias em telas curtas com menos de 456dp.

Componente [id:]ClassName Propriedade Valor
divisórias height @dimen/dialpad_line_divider_height (for horizontal dividers)
width @dimen/dialpad_line_divider_height (for vertical dividers)
background @color/divider_color

Botão do teclado

@KeypadButtonStyle será aplicado ao KeypadButton , que estende FrameLayout.

Componente [id:]ClassName Propriedade Valor
LinearLayout width @dimen/keypad_minimum_size
height @dimen/keypad_minimum_size
keypad_number: TextView style @style/KeypadNumber
keypad_letters: TextView style @style/KeypadLetter
textAllCaps true
keypad_image: ImageView tint @color/car_key2
visibility perdido

Informações do teclado

Disposição. @layout/dialpad_info

Informações do teclado

Figura 3. Informações do teclado de discagem

Componente [id:]ClassName Propriedade Valor

title: TextView

A referência AOSP implementou movimento de entrada no campo do título.

Para desativar o movimento, substitua @bool/config_enable_dial_motion por false .

height @dimen/dialpad_info_title_container_size
textAppearance @style/TextAppearance.DialNumber
(Este estilo também é aplicado ao título programaticamente no DialpadFragment .)
autoSizeTextType uniform
autoSizeMinTextSize @dimen/dialpad_info_title_text_size_min
autoSizeMaxTextSize @dimen/dialpad_info_title_text_size_max
delete_button: ImageView style @style/DialpadSecondaryButton
src @drawable/ic_backspace
marginStart /td> dimen/dialpad_info_title_padding_size
call_button: ImageView style @style/DialpadPrimaryButton
src @drawable/icon_call_button
include @layout/dialpad_user_profile layout_marginTop @dimen/dialpad_user_profile_padding

@layout/dialpad_user_profile é bloqueado por @bool/config_show_detailed_user_profile_on_dialpad para exibir o rótulo e o avatar. O valor padrão é false , que mostra apenas o nome de exibição.

Componente [id:]ClassName Propriedade Valor
display_name: TextView textAppearance @style/TextAppearance.DialpadDisplayName
label: TextView textAppearance ?android:attr/textAppreanceSmall
layout_marginTop @dimen/dialpad_contact_label_margin
dialpad_contact_avatar: ImageView width @dimen/dialpad_contact_avatar_size
height @dimen/dialpad_contact_avatar_size

Modo retrato

Disposição. @layout[ -port ]/dialpad_fragment

Modo retrato

Figura 4. Modo Retrato

Componente [id:]ClassName Propriedade Valor
keypad: KeypadFragment width Decidido pela altura, largura e preenchimento dos botões principais, consulte Teclado .
altura
include
@layout/dialpad_user_profile
N / D Consulte a seção dialpad_user_profile em Informações do teclado de discagem no modo paisagem.
divider: View layout_constraintGuide_percent 0,5
title: TextView Igual ao título nas informações do teclado de discagem no modo paisagem.
delete_button: ImageView O mesmo que delete_button nas informações do teclado de discagem no modo paisagem.
call_button: ImageView style @style/DialpadPrimaryButton
height @dimen/call_button_height
src @drawable/icon_call_button
layout_marginBottom @dimen/call_button_bottom_margin