Autore Topic: ScrollView  (Letto 1100 volte)

Offline moskino11

  • Utente normale
  • ***
  • Post: 179
  • Respect: 0
    • Mostra profilo
ScrollView
« il: 15 Febbraio 2013, 02:14:01 CET »
0
Ciao ragazzi ho un problema con lo scrollView

ho il seguente file xml

Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"

   android:layout_width="fill_parent"
   android:layout_height="wrap_content">

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:orientation="vertical"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:background="#FFFFCC" >

    <ImageView
       android:id="@+id/imageView1"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_alignParentLeft="true"
       android:layout_alignParentRight="true"
       android:layout_alignParentTop="true"
       android:src="@drawable/logo" />

    <TextView
       android:id="@+id/titolo1"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_alignParentLeft="true"
       android:layout_alignParentRight="true"
       android:layout_below="@+id/imageView1"
       android:background="#000000"
       android:text="@string/Titolo1"
       android:textAppearance="?android:attr/textAppearanceMedium"
       android:textColor="#FFFFFF" />

    <LinearLayout
       android:id="@+id/linearLayout1"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_alignParentLeft="true"
       android:layout_alignParentRight="true"
       android:layout_below="@+id/titolo1"
       android:layout_marginTop="22dp"
       android:background="#FFFFFF"
       android:orientation="vertical" >

        <EditText
           android:id="@+id/etNome"
           android:layout_width="324dp"
           android:layout_height="wrap_content"
           android:ems="10"
           android:hint="Nome"
           android:inputType="textPersonName" />

        <EditText
           android:id="@+id/etMail"
           android:layout_width="match_parent"
           android:layout_height="wrap_content"
           android:ems="10"
           android:hint="E-mail"
           android:inputType="textPersonName" />

        <EditText
           android:id="@+id/etTelefono"
           android:layout_width="match_parent"
           android:layout_height="wrap_content"
           android:ems="10"
           android:hint="Telefono"
           android:inputType="phone" />

    </LinearLayout>

    <Button
       android:id="@+id/buttonVerifica"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:text="@string/Verifica"
       android:onClick="web" />

    <TextView
       android:id="@+id/twRegione"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:text="@string/Regione"
       android:textAppearance="?android:attr/textAppearanceMedium"
       android:textColor="#000000" />

    <Spinner
       android:id="@+id/spinnerRegioni"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_alignParentLeft="true"
       android:layout_alignParentRight="true"
       android:layout_below="@+id/regioneTw" />

    <TextView
       android:id="@+id/twProvincia"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_alignParentLeft="true"
       android:layout_below="@+id/spinnerRegioni"
       android:text="@string/Provincia"
       android:textAppearance="?android:attr/textAppearanceMedium"
       android:textColor="#000000" />

    <Spinner
       android:id="@+id/spinnerProvince"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_alignParentLeft="true"
       android:layout_alignParentRight="true"
       android:layout_below="@+id/provinciaTw" />

    <EditText
       android:id="@+id/etComune"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:ems="10"
       android:hint="Comune (facoltativo)" >

        <requestFocus />
    </EditText>

    <TextView
       android:id="@+id/nascondiNumTw"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_alignParentLeft="true"
       android:layout_below="@+id/spinnerProvince"
       android:text="@string/Nascondi"
       android:textAppearance="?android:attr/textAppearanceMedium"
       android:textColor="#000000" />

    <ToggleButton
       android:id="@+id/toggleButton1"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_alignBottom="@+id/avanti"
       android:layout_alignParentLeft="true"
       android:text="ToggleButton"
       />

    <Button
       android:id="@+id/avanti"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:onClick="paginaDue"
       android:padding="15dip"
       android:text="@string/Avanti"/>

</LinearLayout>
</ScrollView>

e vorrei rendere scrollabile solo la parte che inizia dal primo editText(quello che ha id = etNome) fino alla fine.
Ho provato a cambiare alcune cose ma continua a non funzionare,qualche suggerimento?

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:ScrollView
« Risposta #1 il: 15 Febbraio 2013, 08:02:20 CET »
0
Non è obbligatorio che lo ScrollView sia elemento padre di tutti. Puoi mettere come padre un LinearLayout, mettere qualcosa di fisso e poi sotto lo ScrollView per la parte che deve "scrollare".
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline moskino11

  • Utente normale
  • ***
  • Post: 179
  • Respect: 0
    • Mostra profilo
Re:ScrollView
« Risposta #2 il: 15 Febbraio 2013, 10:30:43 CET »
0
Ho fatto cosi ma non va ,l'emulatore va in crash

Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:orientation="vertical"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:background="#FFFFCC" >

    <ImageView
       android:id="@+id/imageView1"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_alignParentLeft="true"
       android:layout_alignParentRight="true"
       android:layout_alignParentTop="true"
       android:src="@drawable/logo" />

    <TextView
       android:id="@+id/titolo1"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_alignParentLeft="true"
       android:layout_alignParentRight="true"
       android:layout_below="@+id/imageView1"
       android:background="#000000"
       android:text="@string/Titolo1"
       android:textAppearance="?android:attr/textAppearanceMedium"
       android:textColor="#FFFFFF" />

   
    <ScrollView

   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:orientation="vertical">
       
        <EditText
           android:id="@+id/etNome"
           android:layout_width="324dp"
           android:layout_height="wrap_content"
           android:ems="10"
           android:hint="Nome"
           android:inputType="textPersonName" />

        <EditText
           android:id="@+id/etMail"
           android:layout_width="match_parent"
           android:layout_height="wrap_content"
           android:ems="10"
           android:hint="E-mail"
           android:inputType="textPersonName" />

        <EditText
           android:id="@+id/etTelefono"
           android:layout_width="match_parent"
           android:layout_height="wrap_content"
           android:ems="10"
           android:hint="Telefono"
           android:inputType="phone" />

   

    <Button
       android:id="@+id/buttonVerifica"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:text="@string/Verifica"
       android:onClick="web" />

    <TextView
       android:id="@+id/twRegione"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:text="@string/Regione"
       android:textAppearance="?android:attr/textAppearanceMedium"
       android:textColor="#000000" />

    <Spinner
       android:id="@+id/spinnerRegioni"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_alignParentLeft="true"
       android:layout_alignParentRight="true"
       android:layout_below="@+id/regioneTw" />

    <TextView
       android:id="@+id/twProvincia"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_alignParentLeft="true"
       android:layout_below="@+id/spinnerRegioni"
       android:text="@string/Provincia"
       android:textAppearance="?android:attr/textAppearanceMedium"
       android:textColor="#000000" />

    <Spinner
       android:id="@+id/spinnerProvince"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_alignParentLeft="true"
       android:layout_alignParentRight="true"
       android:layout_below="@+id/provinciaTw" />

    <EditText
       android:id="@+id/etComune"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:ems="10"
       android:hint="Comune (facoltativo)" >

        <requestFocus />
    </EditText>

    <TextView
       android:id="@+id/nascondiNumTw"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_alignParentLeft="true"
       android:layout_below="@+id/spinnerProvince"
       android:text="@string/Nascondi"
       android:textAppearance="?android:attr/textAppearanceMedium"
       android:textColor="#000000" />

    <ToggleButton
       android:id="@+id/toggleButton1"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_alignBottom="@+id/avanti"
       android:layout_alignParentLeft="true"
       android:text="ToggleButton"
       />

    <Button
       android:id="@+id/avanti"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:onClick="paginaDue"
       android:padding="15dip"
       android:text="@string/Avanti"/>

   
    </ScrollView>
</LinearLayout>

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:ScrollView
« Risposta #3 il: 15 Febbraio 2013, 10:34:11 CET »
0
moskino11, hai 70 post e ancora non hai capito che se hai un crash devi postare il logcat?

Offline moskino11

  • Utente normale
  • ***
  • Post: 179
  • Respect: 0
    • Mostra profilo
Re:ScrollView
« Risposta #4 il: 15 Febbraio 2013, 12:25:29 CET »
0
Ciao Ricky più simpatico del solito oggi é ? :-)
Comunque il logcat è il seguente:



02-15 12:23:20.741: W/dalvikvm(287): threadid=1: thread exiting with uncaught exception (group=0x4001d800)
02-15 12:23:20.761: E/AndroidRuntime(287): FATAL EXCEPTION: main
02-15 12:23:20.761: E/AndroidRuntime(287): java.lang.RuntimeException: Unable to start activity ComponentInfo{pervasive.com.appsubito/pervasive.com.appsubito.MainActivity}: java.lang.IllegalStateException: ScrollView can host only one direct child
02-15 12:23:20.761: E/AndroidRuntime(287):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
02-15 12:23:20.761: E/AndroidRuntime(287):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
02-15 12:23:20.761: E/AndroidRuntime(287):    at android.app.ActivityThread.access$2300(ActivityThread.java:125)
02-15 12:23:20.761: E/AndroidRuntime(287):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
02-15 12:23:20.761: E/AndroidRuntime(287):    at android.os.Handler.dispatchMessage(Handler.java:99)
02-15 12:23:20.761: E/AndroidRuntime(287):    at android.os.Looper.loop(Looper.java:123)
02-15 12:23:20.761: E/AndroidRuntime(287):    at android.app.ActivityThread.main(ActivityThread.java:4627)
02-15 12:23:20.761: E/AndroidRuntime(287):    at java.lang.reflect.Method.invokeNative(Native Method)
02-15 12:23:20.761: E/AndroidRuntime(287):    at java.lang.reflect.Method.invoke(Method.java:521)
02-15 12:23:20.761: E/AndroidRuntime(287):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
02-15 12:23:20.761: E/AndroidRuntime(287):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
02-15 12:23:20.761: E/AndroidRuntime(287):    at dalvik.system.NativeStart.main(Native Method)
02-15 12:23:20.761: E/AndroidRuntime(287): Caused by: java.lang.IllegalStateException: ScrollView can host only one direct child
02-15 12:23:20.761: E/AndroidRuntime(287):    at android.widget.ScrollView.addView(ScrollView.java:219)
02-15 12:23:20.761: E/AndroidRuntime(287):    at android.view.LayoutInflater.rInflate(LayoutInflater.java:622)
02-15 12:23:20.761: E/AndroidRuntime(287):    at android.view.LayoutInflater.rInflate(LayoutInflater.java:621)
02-15 12:23:20.761: E/AndroidRuntime(287):    at android.view.LayoutInflater.inflate(LayoutInflater.java:407)
02-15 12:23:20.761: E/AndroidRuntime(287):    at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
02-15 12:23:20.761: E/AndroidRuntime(287):    at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
02-15 12:23:20.761: E/AndroidRuntime(287):    at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:198)
02-15 12:23:20.761: E/AndroidRuntime(287):    at android.app.Activity.setContentView(Activity.java:1647)
02-15 12:23:20.761: E/AndroidRuntime(287):    at pervasive.com.appsubito.MainActivity.onCreate(MainActivity.java:52)
02-15 12:23:20.761: E/AndroidRuntime(287):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
02-15 12:23:20.761: E/AndroidRuntime(287):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
02-15 12:23:20.761: E/AndroidRuntime(287):    ... 11 more

Offline rs94

  • Utente normale
  • ***
  • Post: 227
  • Respect: +21
    • Mostra profilo
  • Dispositivo Android:
    Sony Ericsson Xperia Arc S
  • Sistema operativo:
    Windows 8
Re:ScrollView
« Risposta #5 il: 15 Febbraio 2013, 13:22:38 CET »
0
Caused by: java.lang.IllegalStateException: ScrollView can host only one direct child

Abbastanza auto-esplicativo direi :D

Prova a mettere un LinearLayout (o un layout di altro tipo) come elemento della scrollview. Dentro a questo tutti gli elementi che hai già :)
L'unica certezza è il dubbio.
Dubitare di se stessi è il primo segno di intelligenza.