Posicionando o EditText acima do teclado

Eu tenho umEditText parecido com este (com "gravidade inferior"):

Quando eu pressiono oEditText, o teclado aparece e não consigo mais ver o que estou digitando (porque o EditText está agora atrás do teclado, na parte inferior). Como eu poderia mover oEditText automaticamente logo acima do teclado, quando ele foi pressionado?

No final, seria bom se fosse assim:

Meu código:

// LINEAR LAYOUT
LinearLayout layout = new LinearLayout(getApplicationContext());
layout.setOrientation(LinearLayout.VERTICAL);
setContentView(layout);
// TEXTVIEW
layout.addView(tv);
// EDITTEXT
et.setGravity(Gravity.BOTTOM);
et.setInputType(InputType.TYPE_CLASS_TEXT);
et.setImeOptions(EditorInfo.IME_ACTION_SEND);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT);
                        params.gravity = Gravity.BOTTOM;
                        et.setLayoutParams(params); // SOMETHING LIKE ONTOUCH -> MOVE UPWARDS
                        layout.addView(et);

questionAnswers(2)

yourAnswerToTheQuestion