2012-03-24 4 views
0
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; 
    } 

}Wie erhält man Zeichenkette Text von AutoCompleteTextView in Android?

Ich möchte nur speichern autocompletetextview 'Quelle' und autocompletetextview 'dest' Werte String-Variable 'Source' und String Variable 'Dest'. Ich werde beide String-Variablen für die weitere Verarbeitung in meinem Projekt verwenden, also bitte hilf mir.

+3

Hallo und willkommen Stackoverflow! Bitte geben Sie einige Informationen darüber an, was Sie bisher versucht haben, um den String-Text von AutoCompleteTextView zu erhalten. Dies ist eine sehr gute Sache zu tun, wie Antworter mehr bereit sein werden, Ihre Frage zu beantworten, wenn Sie ihnen zeigen können, was Sie versucht haben und wo Sie versagt haben. – Animesh

+0

Ich habe gerade diese Frage aktualisiert. –

+0

Sunil, ich habe Sie gebeten, die Frage in der Hoffnung zu aktualisieren, dass jemand, der ein Experte ist, Ihre Frage beantworten könnte. Leider würde ich nicht viel Hilfe in Bezug auf Android-Fragen sein. Bitte warten Sie noch etwas Zeit für Antworten. Wenn Sie es eilig haben, würde ich vorschlagen, diese Frage zu löschen (was Sie nur tun können, wenn noch keine Antworten auf die Frage gepostet wurden) und Ihre Frage in ihrer jetzigen Form erneut zu stellen. Viel Glück. – Animesh

Antwort

2

Nun, zuerst müssen Sie die threshold value definieren. Die Anzahl der Zeichen, mit denen Sie die Liste der Zeichen beginnen möchten.

acTextView = (AutoCompleteTextView)findViewById(R.id.autoCompleteTextbox); acTextView.setThreshold(3);

, dann

add a textwatcher and implement addTextChangedListener AutoCompleteTextView.

Unten ist ein Beispiel:

TextWatcher fieldValidatorTextWatcher = new TextWatcher() { 

     @Override 
     public void afterTextChanged(Editable s) { 
     } 

     @Override 
     public void beforeTextChanged(CharSequence s, int start, int count, int after) { 
     } 

     @Override 
     public void onTextChanged(CharSequence s, int start, int before, int count) { 
      if (filterLongEnough()) { 

       String str=acTextView.getText().toString().trim(); 
       populateList(str);//Function in which i am using the strings from DB, u dnt need it but just in case 
      } 
     } 

     private boolean filterLongEnough() { 
      return acTextView.getText().toString().trim().length() > 2; 
     } 
    }; 
    acTextView.addTextChangedListener(fieldValidatorTextWatcher);