2010-11-22 9 views
0

Ich verwende den folgenden Code, um die Scroll-Ansicht von der Funktion zurückzugeben. Die Scroll-Ansicht enthält die Anzahl der Kontrollkästchen. Ich rufe diese Funktion auf und sie gibt die Scroll-Ansicht korrekt zurück. Aber wie man den Wert erhält, wenn eines der Kontrollkästchen aktiviert ist, muss ich etwas ausführen. Wie geht das?Wie führt man eine Aktion (Listener) von der Funktion aus?

Scroll Ansicht Rückkehr Funktion:

public ScrollView MyViewGroup(String[] Fields,int width,int height)throws Exception{ 

    ScrollView sc=new ScrollView(context); 
    sc.setLayoutParams(new LayoutParams(width, 
      height)); 

    TableLayout tbl=new TableLayout(context);  

    for(int i=0;i<Fields.length;i++){  
     TableRow tr=new TableRow(context);   
     CheckBox ch=new CheckBox(context); 
     ch.setId(i); 
     ch.setText(Fields[i]); 
     tr.addView(ch); 
     tbl.addView(tr);    
    } 

    sc.addView(tbl); 
    return sc;  
} 

und ich verwende diese Funktion wie folgt

LinearLay.addView(MyGui.MyViewGroup(strarr[],200,200); 

Hinweis:

MyGui Klasse i Textviews, EditTexts, Buttons und Scroll erstellen. Mit dieser MyGui Klasse erstelle ich nur die GUI.Ich habe eine Aktivität myform. In dieser myform Klasse, wenn ich auf den Submit Button klicke, muss ich den checked Wert bekommen und ein paar ot bekommen ihre Edittext-Werte vom Benutzer und ergreifen Sie nur die Aktion zum Senden der Schaltfläche. Gibt es eine Möglichkeit, dies zu tun?

Antwort

0

Sie benötigen die Context der UI-Elemente als Parameter an die Methode zu übergeben, und abonnieren Kontrollkästchen, um das OnClickListener Ereignis

so wäre es so etwas wie

class clsLinearLay implements Button.OnClickListener { 
.... 
// implement the method 
} 



LinearLay.addView(MyGui.MyViewGroup(this,strarr[],200,200); 

public ScrollView MyViewGroup(Context ctx, String[] Fields,int width,int height) 

CheckBox ch=new CheckBox(ctx); 
ch.setOnClickListener(ctx); // this will fire in the context class when the state is changed 
+0

ich bereits den Kontext für die eingestellte Klasse MyGui.In dieser MyGui Klasse kann ich TextViews, EditTexts, Buttons und ScrollView auch erstellen; Mit dieser MyGui Class erstelle ich nur die GUI.Ich habe eine Aktivität myform .In dieser myform Klasse, wenn ich auf den Submit Button klicke, muss ich gehen Der überprüfte Wert und einige andere Edittext-Werte vom Benutzer erhalten und nur für die Übermittlungsschaltfläche Aktionen ausführen – Tester

Verwandte Themen