mover a visualização de texto somente quando o teclado virtual é aberto no android

Meu código xml está aqui

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/mainlayout" >

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true" 
    android:id="@+id/toplayout">
    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="100dp"
        android:src="@drawable/bg" />
</LinearLayout>


<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true" 
    android:id="@+id/bottomlayout">
    <EditText
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:hint="Enter value" />
</LinearLayout>

quando eu executo, eu fico assim,

depois de executar, quando eu insiro o valor no texto de edição, o teclado virtual é aberto e todo o mainlayout é rolado para cima, eu fiquei assim

Mas eu, exceto, o layout de cima não para rolar para cima, apenas o layout inferior ou textview rolar para cima. eu espero assim,

como rolar apenas a visualização de edição ao abrir o teclado virtual. ?

questionAnswers(1)

yourAnswerToTheQuestion