Frage

Ich entwickle eine App mit Tabs. Auf einer der Vorsprünge, Ich habe zwei EditText Felder und ein paar Tasten. Ich möchte eine ExpandableListView hinzufügen auf die Lasche unter dem Rest der Elemente,.

Mein Problem ist, dass die aktuelle Klasse Activity erstreckt. All das Beispiel habe ich ExpandableListActivity gefunden erweitern, aber ich kann nicht beide für die gleiche Klasse erweitern.

Wie kann ich diese Liste auf die Registerkarte hinzu? Ich habe ein ExpandableListView Element in der XML Datei hinzugefügt, aber wenn ich es laufen, ist es nicht angezeigt. Ich verstehe, dass ich die Ansicht auf bestimmte Daten zu binden, aber wie gehe ich über das tun dies? Danke.

Hier ist meine Klasse Code:

public class DirectionsTab extends Activity 
{
    private Button clear_btn;
    private Button go_btn;
    private EditText origin_txt;
    private EditText dest_txt;

    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.directions_tab);

        // initialize views and onClick event handler
        origin_txt = (EditText)findViewById(R.id.origin_txt);
        dest_txt = (EditText)findViewById(R.id.dest_txt);
        clear_btn = (Button)findViewById(R.id.clear_btn);
        // clear all text fields and return focus to dest_txt
        clear_btn.setOnClickListener(new OnClickListener(){ 
            @Override
            public void onClick(View v)
            {
             origin_txt.setText("");
             dest_txt.setText(""); 
             origin_txt.requestFocus(); 
            }    
        });        
    } // end public void onCreate(Bundle savedInstanceState)
} // end public class DirectionsTab extends Activity 

und XML:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <TextView
        android:id="@+id/origin_lbl"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="Origin"/>
    <EditText
        android:id="@+id/origin_txt"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@android:drawable/editbox_background"
        android:layout_below="@id/origin_lbl"/>

    <TextView
        android:id="@+id/dest_lbl"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/origin_txt"
        android:text="Destination" />
    <EditText
        android:id="@+id/dest_txt"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@android:drawable/editbox_background"
        android:layout_below="@id/dest_lbl" />    

    <ExpandableListView
     android:id="@+id/listView"      
     android:layout_below="@+id/dest_txt" 
     android:layout_height="wrap_content"
     android:layout_width="wrap_content" /><!--android:id="@android:id/list"-->

    <Button style="?android:attr/buttonStyleSmall"
        android:id="@+id/clear_btn"        
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/dest_txt"
        android:layout_alignParentRight="true"
        android:layout_marginLeft="10dip"        
        android:layout_marginTop="10dip"
        android:text="Clear" />
    <Button style="?android:attr/buttonStyleSmall"
        android:id="@+id/go_btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"        
        android:layout_toLeftOf="@id/clear_btn"
        android:layout_alignTop="@id/clear_btn"
        android:text="Go!" />
</RelativeLayout>
War es hilfreich?

Lösung

Ich habe dies !, Wenn jemand Probleme mit diesem haben, stellen Sie sicher, folgen Sie diese Schritte:

  1. Kopieren und Einfügen ExpandableList3 Beispiel (in ApiDemos befindet Projekt von Samples-Ordner in Ihrem Android-SDK). Dies ist nur ein Beispiel dafür, wie eine Liste einzurichten.
  2. Machen Sie Ihre Klasse vererben ExpandableListActivity
  3. Erstellen Sie die folgende in Ihrer XML-Layout-Datei:

    <ExpandableListView
    android:id="@android:id/list"       
    android:layout_below="@+id/go_btn" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"
    android:layout_weight="1"/>
    

Es ist sehr wichtig, dass die ID-Eigenschaft übereinstimmt, was Sie oben sehen, sonst nichts funktioniert. Dieses kleine Detail viele Stunden für mich verschwendete und war ordentlich wie ein kleines Detail in dem Android-docs entdeckt Sitz.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top