1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

CheckBox in ListView

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von TdB4711, 12.04.2012.

  1. TdB4711, 12.04.2012 #1
    TdB4711

    TdB4711 Threadstarter Junior Mitglied

    Beiträge:
    26
    Erhaltene Danke:
    2
    Registriert seit:
    04.11.2011
    Hi, habe folgendes Problem.
    Normalerweise kommt man an einen Button mit z.B.
    Code:
        bt_ok = (Button) this.findViewById(R.id.bOk); 
    nun habe ich aber eine ListView die mittels:
    Code:
    adapter = new  SimpleCursorAdapter(this, R.layout.listpositions_data,  cursor_Article_list, anzeigeSpalten, anzeigeViews);
    an die View der Aktivity gebunden wird. Mit der Methode oben bekomme ich dann logischerweise "null" zurück, wenn ich eine CheckBox auf der "listpositions_data" ansprechen will.
    Wie mache ich die Checkbox denn nun ansprechbar,das ich ihr z.B einen Listener anhängen kann ?
     
  2. TdB4711, 12.04.2012 #2
    TdB4711

    TdB4711 Threadstarter Junior Mitglied

    Beiträge:
    26
    Erhaltene Danke:
    2
    Registriert seit:
    04.11.2011
    Lösung:
    Code:
    adapter.setViewBinder(new SimpleCursorAdapter.ViewBinder()
            {
                public boolean setViewValue(View view, Cursor cursor, int columnIndex)
                {
                    
                    else if (columnIndex == 3)
                    {
                        CheckBox cb = (CheckBox) view;
                        cb.setOnCheckedChangeListener(new OnCheckedChangeListener()
                        {
    
                            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked)
                            {
                            
                                if (buttonView.isChecked())
                                {
                                    //tu was
    
                                }
                                else
                                {
                                    //tu was anderes
                                }
                                return true;
    
                            }
                        });
    
                    }
    
                    return false; // keine Änderung
    
                }
            });
    
     
  3. TdB4711, 16.04.2012 #3
    TdB4711

    TdB4711 Threadstarter Junior Mitglied

    Beiträge:
    26
    Erhaltene Danke:
    2
    Registriert seit:
    04.11.2011
    Wenn ich beim ersten Start die Checkboxen mit den Daten aus der DB initialisiere, wird natürlich der Listener ausgeführt. Wie verhindert man den so etwas ?

    Erst den Listener setzen , dann die Box, dann klappts :)
     
    Zuletzt bearbeitet: 16.04.2012

Diese Seite empfehlen