Come impostare un foglio XML di lunghezza infinita?

di il
15 risposte

Come impostare un foglio XML di lunghezza infinita?

Devo creare un foglio .xml con una serie di EditText una sotto l'altra dentro un LinearLayout però dato che lo schermo del telefonino è piccolino vorrei fare in modo che quando finisce lo spazio disponibile si possa scorrere la pagina con il pollicione del dito... cosa devo scrivere per poter fare questo?

15 Risposte

  • Re: Come impostare un foglio XML di lunghezza infinita?

    In informatica di "infinito" non esiste nulla, quindi quello che chiedi è irrealizzabile. La domanda è: a cosa ti servono infinite EditText? E, dopo aver constatato che la risposta è "a nulla", pensa a riprogettare meglio il programma, pensando prima di tutto a cosa devi fare. Il come realizzarlo è solo l'ultima parte del lavoro.
  • Re: Come impostare un foglio XML di lunghezza infinita?

    In ogni caso per ottenere lo scorrimento devi racchiudere tutto dentro una ScrollView.
  • Re: Come impostare un foglio XML di lunghezza infinita?

    minomic ha scritto:


    In ogni caso per ottenere lo scorrimento devi racchiudere tutto dentro una ScrollView.




    era quello che cercavo, grazie!

    scusa Della per il mio linguaggio poco informatico...
  • Re: Come impostare un foglio XML di lunghezza infinita?

    Nessun problema, semplicemente non capivo se quello che volevi fare era possibile o meno
  • Re: Come impostare un foglio XML di lunghezza infinita?

    Della ha scritto:


    Nessun problema, semplicemente non capivo se quello che volevi fare era possibile o meno
    ci credo scrivo come un rospo...

    vi chiedo ancora una cosa se posso... e se si può fare agevolmente...

    ho un layout fatto in questo modo:

    LinearLayout >
    scrollView1 >
    LinearLayout >
    TextView_1
    ...
    TextView_i
    TextView_n

    Sarebbe possibile nascondere le TextView dalla numero i alla numero n e sceglierle se visualizzarle oppure no premendo semplicemente su un pulsante o meglio ancora su "qualcosa che funzioni come un pulsante ma non lo sia"... Vedo molti strumenti su Eclipse, secondo me qualcosa ci deve essere... sono fiducioso...
  • Re: Come impostare un foglio XML di lunghezza infinita?

    Ho provato questo tag ma non sembra funzionare...
      <SlidingDrawer
                    android:id="@+id/inviluppatore"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:content="@+id/testo8" >
    
                    <TextView
                        android:id="@id/testo8"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="bla bla bla" />
    
                    ....
    
                </SlidingDrawer>
  • Re: Come impostare un foglio XML di lunghezza infinita?

    Avevo affrontato anche io questo problema: la soluzione che avevo utilizzato era stata quella della gestione delle View direttamente da codice java. In questo senso puoi guardare qui. Dubito che sia la soluzione migliore... Probabilmente si può fare di meglio ma questo approccio dovrebbe comunque risolvere i tuoi problemi.
  • Re: Come impostare un foglio XML di lunghezza infinita?

    Aggiungo un dettaglio: se le TextView non le devi creare dinamicamente ma le devi solo nascondere o visualizzare puoi leggere qui come nascondere un layout. Metti quel codice nell'evento onClick di qualche oggetto e dovresti essere a posto.
  • Re: Come impostare un foglio XML di lunghezza infinita?

    Ma non c'è un comando java che permette di scrivere codice xml un po' come fa php con html?

  • Re: Come impostare un foglio XML di lunghezza infinita?

    minomic ha scritto:


    Aggiungo un dettaglio: se le TextView non le devi creare dinamicamente ma le devi solo nascondere o visualizzare puoi leggere qui come nascondere un layout. Metti quel codice nell'evento onClick di qualche oggetto e dovresti essere a posto.
    In pratica la classe associata ad una pagina xml a cui si arriva ha una cerca variabile X che di norma è 5 ma a volte può anche essere 15 o 20. A me piacerebbe poter scrivere questo:

    Se X = 5 scrivi 5 textview con un preciso testo e un preciso id
    Se X = 6 scrivi 6 textview con un preciso testo e un preciso id
    ecc...

    vorrei evitare di avere 20 textview quando me ne bastano 5....
  • Re: Come impostare un foglio XML di lunghezza infinita?

    Premetto che non ho ancora letto con attenzione ma se uso sharedpreference come illustrato in questo sito:



    pocco editare un file .xml ma non crearlo passa a passo con dei cicli for per creare qualcosa che si ripete come gli id delle textview (id01, id02, ecc...)
  • Re: Come impostare un foglio XML di lunghezza infinita?

    Forse ho trovato quello che cerco qui:

    http://stackoverflow.com/questions/3204852/android-add-a-textview-to-linear-layout-programmatically
    View linearLayout = findViewById(R.id.LL_contenitore);
    TextView valueTV = new TextView(this);
    valueTV.setText("hallo hallo");
    valueTV.setId(5);
    valueTV.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
    ((LinearLayout) linearLayout).addView(valueTV);
    Vi faccio solo una domanda: la riga seguente:
    LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
    ((LinearLayout) linearLayout).addView(valueTV);
    equivare a scrivere:
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    nel tag della EditText?
  • Re: Come impostare un foglio XML di lunghezza infinita?

    Ho fatto questa prova ma non funziona:
    View linearLayout =  findViewById(R.id.nnn);
            TextView valueTV = new TextView(this);
            for (int i=0;i<=3;i++){
            valueTV.setText("prova");
            valueTV.setId(i);
            valueTV.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.WRAP_CONTENT));
            ((LinearLayout) linearLayout).addView(valueTV);
            }
    ma non funziona... sapreste dirmi dove sbaglio? Vorrei vedere sul layout questo:

    prova
    prova
    prova
    prova
  • Re: Come impostare un foglio XML di lunghezza infinita?

    La creazione della TextView deve avvenire dentro al ciclo, perché di fatto tu vuoi creare 4 textview diverse e quindi non puoi "riciclare" sempre la stessa. Per quanto riguarda l'ID ti consiglio di usare il metodo statico :
    
    valueTV.setId(View.generateViewId());
    
    Nota che questo metodo è disponibile solamente per versioni android >= API 17. Se vuoi usarlo in versioni precedenti devi creare "manualmente" questo metodo (puoi semplicemente copiarlo e incollarlo dai sorgenti della classe View).

    Ovviamente se vuoi visualizzare le TextView una sotto l'altra devi assicurarti che nell'XML il linearLayout abbia impostato l'attributo orientation="vertical"
Devi accedere o registrarti per scrivere nel forum
15 risposte