Empurrar ListView quando o teclado aparece sem adjustPan
Eu estou tentando criar uma atividade com um listview e uma mensagem de envio na parte inferior. O problema é que quando o teclado é mostrado, em vez de empurrar o conteúdo do fundo, é apenas escondê-lo. Eu tentei usar o adjustPan, mas ele empurra a visão do buraco para cima (então não há como ver os elementos principais do listview e também de actionbar desaparece).
Se você der uma olhada no WhatsApp ou Line, a funcionalidade é que quando o último item da lista é mostrado na parte inferior da tela, o teclado empurra para cima o listview (sem tirar a barra de ação ou os primeiros elementos da tela ), e quando o último item da lista não é mostrado (depois de alguma rolagem para cima) o teclado fica oculto na lista inferior (um adjustResize normal).
Alguém lidou com esse problema?
obrigado
EDITAR:
Vou tentar colocar um exemplo visual:
Então vamos dizer isso o ListView:
---item 1---
---item 2---
---item 3---
---item 4---
---EditText---
O editText não faz parte do ListView, mas um LinearLayout alinhado na parte inferior. Quando o teclado é mostrado, o ListView se torna assim (os itens 3 e 4 são ocultados pelo teclado):
---item 1---
---item 2---
---EditText---
---Keyboard---
e o que eu gostaria de obter é:
---item 3---
---item 4---
---EditText---
---Keyboard---
Eu tentei o android: windowSoftInputMode = "adjustPan" e o resultado é que, efetivamente, os itens 3 e 4 são empurrados para cima e não são mais escondidos pelo teclado. O problema é que ele empurra o listview, mas o empurra para fora da tela, então o actionBar desaparece, e mesmo se tentar rolar para cima, eu nunca consigo ver o Item 1 e 2 com o teclado mostrado.
Espero ter me explicado, não é realmente fácil ..
obrigado