Reputation: 157
There are one AutoCompleteTextView, Edittext and Button in dialog box. If AutoCompleteTextView is used Focus on dropdown. so it can easily select. If anyone select AAA in autocompletetextview then set edittext value to BBB. eg. If select CCC then set editext value to DDD. EditText value will be change by the value of AutoCompleteTextView selection. How can i set if AutoComplete was AAA then set value to Edittext BBB.
Pls see my code below:
private EditText editText;
private AutoCompleteTextView completeTextView;
String[] items = { "AAA","CCC","EEE", "GGG"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//AuutoCompleteTextView
completeTextView = (AutoCompleteTextView) findViewById(R.id.complete_text);
// show list on focus
completeTextView.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
completeTextView.showDropDown();
return false;
}
});
completeTextView.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
if (completeTextView.toString().equals("AAA")) {
editText.setText("BBB",TextView.BufferType.NORMAL);
}
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
});
completeTextView.setAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_dropdown_item_1line, items));
editText = (EditText) findViewById(R.id.edit_text);
}
Upvotes: 0
Views: 1517
Reputation: 3633
Try with below code:
private EditText editText;
private AutoCompleteTextView completeTextView;
String[] items = { "AAA","CCC","EEE", "GGG"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//AuutoCompleteTextView
completeTextView = (AutoCompleteTextView) findViewById(R.id.complete_text);
completeTextView.setAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_dropdown_item_1line, items));
editText = (EditText) findViewById(R.id.edit_text);
completeTextView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
if(items[position].equals("AAA"){
editText.setText("BBB");}
}
});
}
Upvotes: 1
Reputation: 12358
Use this
actv.setOnSelectedListener(new OnItemClickListener() {
@Override
public void onItemSelected (AdapterView<?> parent, View view, int position, long id) {
//... your stuff
}
})
References:
http://developer.android.com/reference/android/widget/AutoCompleteTextView.html
Upvotes: 0