Adicionei um EditText
ao meu layout, adicionei uma dica e o centralizei horizontalmente.
Ao executar o aplicativo, a dica estava invisível. Eu achei que eu deveria fazer o ellipsize
valor do TextView
ser start
:
<EditText
android:id="@+id/number1EditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ellipsize="start"
android:ems="10"
android:gravity="center_horizontal"
android:hint="@string/hint1" />
Na documentação do Android, eu li:
Se definido, faz com que as
elipses maiores que a visualização sejam amplas, sejam elipsizadas em vez de quebradas no meio.
O problema é que ellipsize
não foi encontrado no dicionário. Alguém pode me explicar quais benefícios podemos obter por ellipsize
atributo? E qual é a diferença entre start
, end
, middle
?
android
android-layout
textview
Hamzeh Soboh
fonte
fonte
Respostas:
Você pode encontrar documentação aqui .
Com base em sua exigência, você pode tentar a opção de acordo.
elipsize , um neologismo, significa reduzir o texto usando uma elipse , isto é, três pontos
...
ou mais comumente ligadura…
, para substituir os bits omitidos.Digamos que o valor original da visualização de texto é aaabbbccc e seu ajuste dentro da visualização
start
A saída será: ... bcccend
A saída será: aaab ...middle
a saída será: aa ... ccmarquee
A saída será: aaabbbccc deslizando automaticamente da direita para a esquerdafonte
pela minha experiência, as reticências funcionam apenas se abaixo de dois atributos estiverem definidos.
para a largura do textview, wrap_content ou match_parent devem ser bons.
fonte
android:singleLine
foi descontinuado desde o nível 3 da API; portanto, useandroid:maxLines
. Observe:> se for fornecido o singleLine e o inputType, os sinalizadores inputType substituirão o valor do singleLine. Confira os documentos em R.attr.html # singleLineHow to Add an ellipsis in a TextView
android: elipsize adicionado no nível 1 da API. As reticências são três períodos consecutivos. (...)
No seu XML
Nesse ponto, as reticências ainda não serão exibidas, pois um TextView está definido para expandir automaticamente o padrão quando um novo texto for inserido. Você precisará limitar o TextView de alguma forma. Faça isso, você pode usar adicionar ao seu
TextView a scrollHorizontally, minLines, or maxLines
para exibir as reticências.Para fazer a elipse:
E
E
E
Nota Por favor:
Para mais detalhes você pode visitar aqui
fonte
As reticências são três períodos seguidos ...
O TextView usará reticências quando não puder ser expandido para mostrar todo o seu texto. O atributo
ellipsized
define a posição dos três pontos, se necessário.fonte
Texto:
Suponha que o texto acima seja o seu e, se você estiver usando
ellipsize
ostart
atributo, ele será visto assimcom
end
atributofonte
Aqui está um exemplo de como o elipsize funciona sem o uso de obsoleto
android:singleLine="true"
em um ConstraintLayout:lembre-se se você possui um texto que deveria estar em uma única linha, altere os maxLines para 1.
fonte
android:layout_width="0dp"
vez deandroid:layout_width="wrap_content"
. Observe que isso é aplicável porque eu estou usando umConstraintLayout
. Também discutido aqui stackoverflow.com/a/48149405/2848676Nota: seu texto deve ser maior que a caixa do contêiner para que o seguinte seja marcado:
fonte
Defina esta propriedade para editar o texto. Elipsize está trabalhando com desativar a edição de texto
ou setKeyListener (nulo);
fonte
Use reticências quando tiver largura fixa, em seguida, ele truncará automaticamente o texto e exibirá as reticências no final,
não funcionará se você definir layout_width como wrap_content & match_parent.
fonte