2012-03-24 2 views
4
public class FareActivity extends Activity { 


int fareid; 
String Source; 
String Dest; 
AutoCompleteTextView source; 
AutoCompleteTextView dest; 


static final String[] SOURCE = new String[] { 
     "Delhi", "Mumbai", "Agra", "Jaipur}; 


static final String[] DEST = new String[] { 
     "Delhi", "Mumbai", "Agra", "Jaipur}; 




/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.fare); 




    dest = (AutoCompleteTextView) findViewById(R.id.acdest); 
    ArrayAdapter<String> dadapter = new ArrayAdapter<String>(this, R.layout.list_item, DEST); 
    dest.setAdapter(dadapter); 



source = (AutoCompleteTextView) findViewById(R.id.acsource); 
ArrayAdapter<String> sadapter = new ArrayAdapter<String>(this, R.layout.list_item, SOURCE); 
    dest.setAdapter(sadapter); 




// Fare id calculation 

    if(Source=="Delhi" && Dest=="Jaipur") 
    { 
     fareid=1; 
    } 
    else if(Source=="Delhi" && Dest=="Agra") 
    { 
     fareid=2; 
    } 
    else if(Source=="Delhi" && Dest=="Mumbai") 
    { 
     fareid=3; 
    } 


} 

Ich möchte nur Autocompletetextview 'Quelle' und Autocompletetextview 'Ziel' Werte zu String Variable 'Source' und String Variable 'Dest' speichern. Ich werde beide String-Variablen für die weitere Verarbeitung in meinem Projekt verwenden, also bitte hilf mir.Wie erhält man Text von AutoCompleteTextView?

+0

Möchten Sie einen Text der Autocomplete-Ansicht erhalten? - mit 'String myDest = dest.getText(). toString()'? – pleerock

+0

http://stackoverflow.com/questions/4819813/how-to-get-text-from-autocomplete-textview-android – AliSh

Antwort

14

Verwenden Sie einfach die AutoCompleteTextView-Methode getText() und rufen Sie toString() darauf.

// Fare id calculation 
Source = source.getText().toString(); 
Dest = dest.getText().toString(); 

if (Source.equals("Delhi") && Dest.equals("Jaipur")) { 
    fareid=1; 
} 
else if (Source.equals("Delhi") && Dest.equals("Agra")) { 
    fareid=2; 
} 
else if (Source.equals("Delhi") && Dest.equals("Mumbai")) { 
    fareid=3; 
} 

Sie sollten daran denken, dass Benutzer alles, was sie wollen, in Ihre AutoCompleteTextView eingeben können. Wenn Sie eine Aktion ausführen möchten, wenn der Benutzer einen der vorgeschlagenen Elemente auswählt, fügen Sie OnItemSelectedListener mit dest.setOnItemSelectedListener() hinzu.

Es gibt auch einen Fehler in Ihrem Code, den Sie dest.setAdapter(sadapter) anstelle von source.setAdapter(sadapter) aufrufen.

+4

Anstelle von "==" für String Vergleich sollte "equals()" Methode verwendet werden. –

3
AutoCompleteTextView source = (AutoCompleteTextView) findViewById(R.id.acsource); 
String Source = source.getText().toString();