package android.example; import android.app.Activity; import android.content.Context; import android.graphics.Color; import android.os.Bundle; import android.text.Editable; import android.text.TextWatcher; import android.text.method.ScrollingMovementMethod; import android.view.View; import android.view.View.OnLongClickListener; import android.view.inputmethod.InputMethodManager; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ArrayAdapter; import android.widget.EditText; import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class AndroidExample1 extends Activity { private TextView text; private ListView listView; private ArrayAdapter adapter; private EditText filterEditText; private Map map; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); text = (TextView) findViewById(R.id.text); text.setTextSize(20); text.setBackgroundColor(Color.WHITE); text.setText(""); map = new HashMap(); map.put("One", 1); map.put("Two x", 2); map.put("Three", 3); map.put("Four", 4); map.put("Five e", 5); map.put("Six x", 6); map.put("Seven", 7); map.put("Eight", 8); map.put("Nine", 9); map.put("Ten", 10); map.put("Eleven t", 11); map.put("Twelve", 12); List list = new ArrayList(map.keySet()); listView = (ListView) findViewById(R.id.list); adapter = new ArrayAdapter(this, R.layout.list_item, list); listView.setAdapter(adapter); listView.setOnItemClickListener(new OnItemClick()); filterEditText = (EditText) findViewById(R.id.filter); filterEditText.setHint("Type Letters of Word"); filterEditText.addTextChangedListener(new TextWatcherClass()); } class OnItemClick implements OnItemClickListener { public void onItemClick(AdapterView parent, View view, int position, long id) { String aKey = ((TextView) view).getText().toString(); int out = map.get(aKey); text.setOnLongClickListener(new ClickView()); //text.setBackgroundColor(Color.WHITE); text.setTextColor(Color.BLACK); text.setTextSize(15); text.setMovementMethod(new ScrollingMovementMethod()); text.setText(out + ""); Toast.makeText(getApplicationContext(), "Press and Hold results window to clear.", Toast.LENGTH_LONG).show(); } } class ClickView implements OnLongClickListener { public boolean onLongClick(View view) { text.setText(""); text.bringPointIntoView(RESULT_OK); return true; } } class TextWatcherClass implements TextWatcher { @Override public void onTextChanged(CharSequence s, int start, int before, int count) { adapter.getFilter().filter(s.toString()); } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void afterTextChanged(Editable s) { //InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); //imm.hideSoftInputFromWindow(filterEditText.getWindowToken(), 0); } } }