Liebe Leser,
Wenn dies Ihr erster Besuch hier ist, lesen Sie bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Sie müssen sich vermutlich registrieren, bevor Sie Beiträge verfassen können. Klicken Sie rechts auf 'Jetzt registrieren.', um den Registrierungsprozess zu starten.
Ergebnis 1 bis 3 von 3
  1. #1
    Registriert seit
    07.2011
    Beiträge
    6

    Android Spinner in ListView

    Hallo Forum,
    ich weiß nicht ob das überhaupt das richtige Forum ist um diese Frage zu stellen aber tu es einfach mal in der hoffnung dass mir jemand helfen kann.

    Ich enwikle gerade ein Programm für Android 2.2 und bin noch relativ neu bei Android. Ich möchte zunächst nur ein layout erstellen.
    es soll aus zwei untereinanderliegenden spinnern bestehen und darunter soll ein ListView sein in dessen einzelnen Zeilen auch jeweils ein Spinner und ein Button sind.
    Mein Problem ist ich schaffe es weder die spinner in der ListView zu füllen noch einen Listener für die Buttons zu setzen.
    Das hier ist der Quellcode der Activity

    import java.util.ArrayList;
    import java.util.HashMap;

    import android.app.Activity;
    import android.app.Dialog;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.ArrayAdapter;
    import android.widget.Button;
    import android.widget.ListView;
    import android.widget.SimpleAdapter;
    import android.widget.Spinner;
    import android.widget.TextView;

    public class Main extends Activity {
    String arr1[]= new String[]{"Estado Mental","Deambulacao","Oxigenacao","Alimentacao","Integridade","Sinais Vitais","Motilidade","Elimanacao","Terapeutica","Cuidado corporal"};
    Spinner sp=null;
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    //
    // sp = (Spinner) findViewById(R.id.grau);
    // SpinAdapter(new String[]{"1","2","3","4","5"},sp);
    //
    // Button but = (Button) findViewById(R.id.oque);
    // but.setOnClickListener(new View.OnClickListener() {
    // public void onClick(View v) {
    // }
    // });

    ListView list = (ListView) findViewById(R.id.list);
    Adapter(list,arr1);

    }
    public void ClickListener(View v){
    MostraDialog("läuft","geht doch man");
    }
    public void SpinAdapter(String[] arr,Spinner spinner){
    try {
    ArrayAdapter<Object> adapter = new ArrayAdapter<Object>(this,android.R.layout.simple_spinner_item,arr);
    spinner.setAdapter(adapter);
    } catch (Exception e) {
    MostraDialog("Adaptar failded","Could not set adapter to Spinner!");
    }
    }
    public void Adapter(ListView list, String[] arr1) {
    ArrayList<HashMap<String, Object>> mylist = new ArrayList<HashMap<String, Object>>();
    HashMap<String, Object> map = null;
    for(int i=0;i<arr1.length;i++){
    map = new HashMap<String, Object>();
    map.put("text", arr1[i]);
    map.put("oque","?");
    mylist.add(map);
    }
    SimpleAdapter mSchedule = new SimpleAdapter(this, mylist, R.layout.rows, new String[] {"text","oque"}, new int[] {R.id.text, R.id.oque});
    list.setAdapter(mSchedule);
    }
    }
    das hier ist die main layout 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/txt1"
    android:layout_alignParentTop="true"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="Clínica" />
    <Spinner android:id="@+id/clinica"
    android:layout_below="@id/txt1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:drawSelectorOnTop="true" />

    <TextView android:id="@+id/txt2"
    android:layout_below="@id/clinica"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="Nome Paciente" />

    <Spinner android:id="@+id/nome"
    android:layout_below="@id/txt2"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" />

    <ListView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/list"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@id/nome"/>
    </RelativeLayout>

    und das die rows.xml:

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:paddingTop="4dip"
    android:paddingBottom="6dip"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" >

    <TextView android:id="@+id/text"
    android:layout_width="160dip"
    android:layout_height="wrap_content" />

    <Spinner android:id="@+id/grau"
    android:layout_width="90dip"
    android:layout_height="wrap_content"
    android:drawSelectorOnTop="true" />

    <Button android:id="@+id/oque"
    android:layout_width="50dip"
    android:layout_height="wrap_content"/>

    </LinearLayout>

    Gruß diealtebremse

  2. #2
    Registriert seit
    07.2011
    Beiträge
    6
    ok hab noch mal in den tiefen des webs gegraben und eine methode namens customadapter gefunden. jetzt habe ich aber das problem, dass ich nicht weiß wie ich einen neuen eintrag zur listview hinzufüge. hier der neue quelltext:
    package eec.minimos;

    import android.app.Activity;
    import android.app.Dialog;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.view.ViewGroup;
    import android.widget.ArrayAdapter;
    import android.widget.BaseAdapter;
    import android.widget.Button;
    import android.widget.ListView;
    import android.widget.Spinner;
    import android.widget.TextView;

    public class Main extends Activity {
    String arr1[]= new String[]{"Estado Mental","Deambulacao","Oxigenacao","Alimentacao","Integridade","Sinais Vitais","Motilidade","Elimanacao","Terapeutica","Cuidado corporal"};
    Spinner sp=null;
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    ListView list = (ListView) findViewById(R.id.list);
    CustomAdapter adapter = new CustomAdapter();
    list.setAdapter(adapter);
    }
    private class CustomAdapter extends BaseAdapter{
    public int getCount() {
    return 0;
    }
    public Object getItem(int position) {
    return null;
    }
    public long getItemId(int position) {
    return 0;
    }
    protected class ViewHolder {
    private Button oque;
    private Spinner grau;
    }
    public View getView(int position, View view, ViewGroup parent) {
    view = View.inflate(getBaseContext(), R.layout.rows, null);

    ViewHolder holder = new ViewHolder();
    holder.oque = (Button) view.findViewById(R.id.oque);
    holder.grau = (Spinner) view.findViewById(R.id.grau);

    holder.oque.setText("?");
    holder.oque.setOnClickListener(ClickListener);
    ArrayAdapter<Object> adapter = new ArrayAdapter<Object>(null, position, new String[]{"1","2","3","4","5"});
    holder.grau.setAdapter(adapter);

    view.setTag(holder);

    return view;
    }
    private OnClickListener ClickListener = new OnClickListener() {
    public void onClick(View v) {

    }
    };
    }
    }

  3. #3
    Registriert seit
    07.2011
    Beiträge
    6
    Habs gelöst

Ähnliche Themen

  1. Android-Boom: Geniale Android-Produkte, die keine Handys sind
    Von mittendurch im Forum Online: Ihre Meinung zu redaktionellen Artikeln auf unserer Website
    Antworten: 5
    Letzter Beitrag: 11.08.2010, 07:57
  2. Android-Update: Android 2.2 für HTC Desire steht bereit
    Von Edja im Forum Online: Ihre Meinung zu redaktionellen Artikeln auf unserer Website
    Antworten: 0
    Letzter Beitrag: 02.08.2010, 15:00
  3. Android-Update: Android 2.2 bringt USB-Tethering, Wifi-Hotspot & mehr Tempo
    Von remarque im Forum Online: Ihre Meinung zu redaktionellen Artikeln auf unserer Website
    Antworten: 1
    Letzter Beitrag: 17.05.2010, 11:33
  4. C# - Suchen in der ListView
    Von User071009 im Forum Programmieren
    Antworten: 5
    Letzter Beitrag: 25.08.2009, 08:26

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  
12
Content Management by InterRed