public void showSetBetDialog() { AlertDialog.Builder builder = new Builder(this); LayoutInflater infalInflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE); FrameLayout layout = (FrameLayout) infalInflater.inflate(R.layout.bet, null); final AutoCompleteTextView input = (AutoCompleteTextView) layout.findViewById(R.id.tv_bet_input); input.setInputType(InputType.TYPE_CLASS_NUMBER); LengthFilter filter = new LengthFilter(5); input.setFilters(new InputFilter[] {filter}); input.setSelectAllOnFocus(true); input.setTextColor(Color.BLACK); input.setText("" + this.number); String[] betSuggestion = getResources().getStringArray(R.array.bet_suggestion); final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.item_list_s, betSuggestion); adapter.setNotifyOnChange(true); input.setAdapter(adapter); input.setThreshold(1); input.setOnFocusChangeListener( new OnFocusChangeListener() { @Override public void onFocusChange(View v, boolean hasFocus) { if (input.isFocused()) { input.showDropDown(); } } }); input.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { if (input.isFocused()) { input.showDropDown(); } } }); builder.setView(layout); builder.setPositiveButton( getResources().getString(R.string.confirm_ok), new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { int number = PasswordGeneratorActivity.this.number; try { number = Integer.parseInt(input.getText().toString()); } catch (Exception e) { // TODO: handle exception } if (number < 4) number = 4; else if (number > 21) number = 21; setTextNumberCharacter(number); } }); builder.setNegativeButton(getResources().getString(R.string.confirm_cancel), null); builder.setIcon(R.drawable.ic_launcher); builder.create().show(); }