2013-03-23 14 views
11

ho una forma lunga e quando appare la tastiera virtuale non riesco a vedere i editTexts fondoscorrimento verso l'alto per la tastiera virtuale

Questo è il mio xml

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" > 

<RelativeLayout 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" > 

    <TextView 
     android:id="@+id/register_title" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:layout_centerHorizontal="true" 
     android:layout_marginBottom="20dp" 
     android:text="@string/register" 
     android:textAppearance="?android:attr/textAppearanceLarge" /> 

    <TextView 
     android:id="@+id/register_username" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_title" 
     android:layout_centerHorizontal="true" 
     android:text="@string/username" /> 

    <EditText 
     android:id="@+id/register_edit_username" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_username" 
     android:layout_centerHorizontal="true" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="text" > 
    </EditText> 

    <TextView 
     android:id="@+id/register_password" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_edit_username" 
     android:layout_centerHorizontal="true" 
     android:text="@string/password" /> 

    <EditText 
     android:id="@+id/register_edit_password" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_password" 
     android:layout_centerHorizontal="true" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="textPassword" > 
    </EditText> 

    <TextView 
     android:id="@+id/register_confirm" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_edit_password" 
     android:layout_centerHorizontal="true" 
     android:layout_marginBottom="20dp" 
     android:text="@string/confirm" /> 

    <EditText 
     android:id="@+id/register_edit_confirm" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_confirm" 
     android:layout_centerHorizontal="true" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="textPassword" > 
    </EditText> 

    <TextView 
     android:id="@+id/register_mail" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_edit_confirm" 
     android:layout_centerHorizontal="true" 
     android:text="@string/mail" /> 

    <EditText 
     android:id="@+id/register_edit_mail" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_mail" 
     android:layout_centerHorizontal="true" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="textEmailAddress" > 
    </EditText> 

    <TextView 
     android:id="@+id/register_phone" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_edit_mail" 
     android:layout_centerHorizontal="true" 
     android:text="@string/phone" /> 

    <EditText 
     android:id="@+id/register_edit_phone" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_phone" 
     android:layout_centerHorizontal="true" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="phone" > 
    </EditText> 

    <TextView 
     android:id="@+id/register_last_name" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_edit_phone" 
     android:layout_centerHorizontal="true" 
     android:text="@string/last_name" /> 

    <EditText 
     android:id="@+id/register_edit_last_name" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_last_name" 
     android:layout_centerHorizontal="true" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="text" > 
    </EditText> 

    <TextView 
     android:id="@+id/register_first_name" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_edit_last_name" 
     android:layout_centerHorizontal="true" 
     android:text="@string/first_name" /> 

    <EditText 
     android:id="@+id/register_edit_first_name" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_first_name" 
     android:layout_centerHorizontal="true" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="text" > 
    </EditText> 

    <TextView 
     android:id="@+id/register_alert_password" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_edit_first_name" 
     android:layout_centerHorizontal="true" 
     android:text="@string/register_alert_pwd" /> 

    <EditText 
     android:id="@+id/register_edit_alert_password" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_alert_password" 
     android:layout_centerHorizontal="true" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="textPassword" > 
    </EditText> 

    <TextView 
     android:id="@+id/register_alert_password_confirm" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_edit_alert_password" 
     android:layout_centerHorizontal="true" 
     android:text="@string/register_alert_pwd_confirm" /> 

    <EditText 
     android:id="@+id/register_edit_alert_password_confirm" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_alert_password_confirm" 
     android:layout_centerHorizontal="true" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="textPassword" > 
    </EditText> 

    <CheckBox 
     android:id="@+id/register_tou" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_edit_alert_password_confirm" 
     android:layout_centerHorizontal="true" 
     android:text="@string/register_tou" /> 

    <Button 
     android:id="@+id/register_valid" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/register_tou" 
     android:layout_centerHorizontal="true" 
     android:text="@string/confirm" /> 

</RelativeLayout> 

</ScrollView> 

ho anche aggiornare la mia attività nel manifesta

<activity 
     android:name="my name" 
     android:label="@string/title_activity_register" 
     android:theme="@android:style/Theme.Light.NoTitleBar.Fullscreen" 
     android:windowSoftInputMode="stateVisible|adjustResize" > 
</activity> 

In tutti altri post ho visto che la soluzione era

android:windowSoftInputMode="stateVisible|adjustResize" 

Ma Non opere nel mio caso

Grazie

Modifica

Update per il mio ultimo codice

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/register" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:fillViewport="true" > 

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" > 

    <TextView 
     android:id="@+id/register_title" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:layout_marginBottom="20dp" 
     android:text="@string/register" 
     android:textAppearance="?android:attr/textAppearanceLarge" /> 

    <TextView 
     android:id="@+id/register_username" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:text="@string/username" /> 

    <EditText 
     android:id="@+id/register_edit_username" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="text" > 
    </EditText> 

    <TextView 
     android:id="@+id/register_password" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:text="@string/password" /> 

    <EditText 
     android:id="@+id/register_edit_password" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="textPassword" > 
    </EditText> 

    <TextView 
     android:id="@+id/register_confirm" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:layout_marginBottom="20dp" 
     android:text="@string/confirm" /> 

    <EditText 
     android:id="@+id/register_edit_confirm" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="textPassword" > 
    </EditText> 

    <TextView 
     android:id="@+id/register_mail" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:text="@string/mail" /> 

    <EditText 
     android:id="@+id/register_edit_mail" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="textEmailAddress" > 
    </EditText> 

    <TextView 
     android:id="@+id/register_phone" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:text="@string/phone" /> 

    <EditText 
     android:id="@+id/register_edit_phone" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="phone" > 
    </EditText> 

    <TextView 
     android:id="@+id/register_last_name" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:text="@string/last_name" /> 

    <EditText 
     android:id="@+id/register_edit_last_name" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="text" > 
    </EditText> 

    <TextView 
     android:id="@+id/register_first_name" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:text="@string/first_name" /> 

    <EditText 
     android:id="@+id/register_edit_first_name" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="text" > 
    </EditText> 

    <TextView 
     android:id="@+id/register_alert_password" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:text="@string/register_alert_pwd" /> 

    <EditText 
     android:id="@+id/register_edit_alert_password" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:inputType="textPassword" > 
    </EditText> 

    <TextView 
     android:id="@+id/register_alert_password_confirm" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:text="@string/register_alert_pwd_confirm" /> 

    <EditText 
     android:id="@+id/register_edit_alert_password_confirm" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:layout_marginBottom="20dp" 
     android:ems="10" 
     android:imeOptions="actionSend" 
     android:inputType="textPassword" > 
    </EditText> 

    <CheckBox 
     android:id="@+id/register_tou" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:text="@string/register_tou" /> 

    <TextView 
     android:id="@+id/register_condition" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:layout_marginBottom="20dp" 
     android:text="@string/register_read_tou" /> 

    <Button 
     android:id="@+id/register_valid" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical|center_horizontal" 
     android:text="@string/confirm" /> 
</LinearLayout> 

</ScrollView> 
+0

uso adjustPan invece di adjustResize. – Jitendra

+0

Grazie, ma ho sempre lo stesso problema – Ajouve

+0

Se hai un lungo modulo dovresti averlo veramente in una ScrollView per cominciare. Non è garantito che l'utente abbia l'altezza dello schermo per vederlo tutto, con o senza tastiera. Se lo fai, sarà in grado di scorrere verso il basso quando la tastiera si apre. – thomas88wp

risposta

0

provare ad aggiungere questo alla vostra vista di scorrimento:

android:fillViewport="true" 

e penso in Manifest la seguente impostazione

android:windowSoftInputMode="adjustResize" 

farà il suo lavoro giusto.

+0

Aggiungo android: fillViewport = "true" alla mia vista scroll e aggiorno la mia attività nel mio manifest con solo adjustResize ma ho sempre lo stesso problema, non riesco a scorrere fino in fondo alla pagina è nascosta dalla tastiera e Impossibile scorrere sopra la tastiera – Ajouve

+0

@ant hai risolto questo? Sto avendo lo stesso problema? – theiOSDude

+0

@ burrows111 Sì senza utilizzare fullscreen – Ajouve

1

Si potrebbe provare questo nel vostro file manifesto:

android:windowSoftInputMode="adjustUnspecified" 

ho che nella mia app che si trova in una ScrollView e funziona per me. Penso che quello potrebbe anche essere il valore defualt per windowSoftInputMode ma non sono sicuro al 100%.

Modifica: questo è l'inizio del mio ScrollView, invariato.

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context=".MainActivity" 
    android:id="@+id/testing"> 

magari cercare di mettere la vostra altezza LinearLayout come match_parent pure.

+0

Inoltre, si può prendere in considerazione modificando le 'fill_parent' di a' match_parent'. 'fill_parent' è stato deprecato in API 8 e sostituito con' match_parent'. – TronicZomB

+0

Aggiorno il mio manifest e cambio fill_parent in match_parent ma ho lo stesso risultato – Ajouve

+0

@ant Ho aggiornato la mia risposta. – TronicZomB

Problemi correlati