Autore Topic: Catturare 2 testi da layout della listView  (Letto 627 volte)

Offline MrKrabs

  • Utente junior
  • **
  • Post: 94
  • Respect: +4
    • Mostra profilo
Catturare 2 testi da layout della listView
« il: 11 Gennaio 2011, 18:59:33 CET »
0
Ciao a tutti

Codice (Java): [Seleziona]
MiaListView.setOnItemLongClickListener(new OnItemLongClickListener() {
            public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
                       
           //QUI AVREI BISOGNO DI CATTURARE I 2 TESTI DELLE LISTVIEW CONTENUTI NEL LAYOUT DELLA LIST VIEW
         
          //IN CASO AVESSI DOVUTO CATTURARE UN SOLO TESTO testo = ((TextView) view).getText().toString();
       
                builder.setItems(items, new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int item) {
                     
                        if(items[item]=="Cancella"){
                                MyDatabase db=new MyDatabase(getApplicationContext());
                                        db.open();
                                        db.mDb.delete(ProductsMetaData.MATERIE_TABLE, "name=\""+MatText+"\" and tipo=\"MioTipo\"", null);
                                        db.close();
                                        finish();
                        }
                    }
                });

Questo è il layout della MiaListView
Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:weightSum="10"
        >
<TextView      
                android:id="@+id/Dt"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="8"
                android:textSize="25dp"
                android:textColor="#ffffff"
                android:paddingLeft="10px">
</TextView>
<TextView      
                android:id="@+id/Vt"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="8"
                android:textSize="25dp"
                android:textColor="#ffffff">
</TextView>
</LinearLayout>

Ora la mia domanda è: come posso catturare il testo presente nelle 2 TextView?

Nel caso ho 1 sola textView quindi 1 solo testo da catturare posso scrivere cosi  (ho commentato sopra nel codice): testo = ((TextView) view).getText().toString(); e funziona.

Ma nel caso di 2 textView non so come comportarmi......!!??


Offline Nicola_D

  • Moderatore
  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:Catturare 2 testi da layout della listView
« Risposta #1 il: 11 Gennaio 2011, 19:12:41 CET »
0
non ne sono sicurissimo,ma in teoria se hai piu elementi, quella view li è il container principale, cioè per te il LinearLayout.
Dovresti quindi tramite castare quella view a linearLayout e poi con l'inflater fare il findViewBy id o findchild (non mi ricordo come si fa esattamente) prendere le due textView.
Avevo del codice che faceva qualcosa di simile ma chi si ricorda dov'è... prova a usare google,io avevo trovato cosi!
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline Qlimax

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 757
  • Respect: +203
    • Google+
    • _Qlimax
    • Mostra profilo
    • www.egsolutions.ch
  • Dispositivo Android:
    Galaxy Nexus - Nexus One - Wildfire - Magic
  • Play Store ID:
    egsolutions.ch
  • Sistema operativo:
    Ubuntu 12.04, Windows 7
Re:Catturare 2 testi da layout della listView
« Risposta #2 il: 11 Gennaio 2011, 20:38:53 CET »
0
esatto, dovresti poter accedere alle rispettive textview tramite

Codice (Java): [Seleziona]
TextView tv1=(TextView)view.findViewById(R.id.Dt);

TextView tv2=(TextView)view.findViewById(R.id.Vt);

String tv1Str=tv1.getText();
...


view in questo caso, è l'oggetto ritornato dal metodo getView implementato nell'adapter
« Ultima modifica: 11 Gennaio 2011, 20:44:18 CET da Qlimax »

Offline MrKrabs

  • Utente junior
  • **
  • Post: 94
  • Respect: +4
    • Mostra profilo
Re:Catturare 2 testi da layout della listView
« Risposta #3 il: 11 Gennaio 2011, 22:52:02 CET »
0
Siete davvero GRANDI!

funziona!  :D

Offline Nicola_D

  • Moderatore
  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:Catturare 2 testi da layout della listView
« Risposta #4 il: 12 Gennaio 2011, 00:22:39 CET »
0
Siete davvero GRANDI!

funziona!  :D
hehehehe
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia