sonidos sonido quitar gusta desactivar dar cómo como actualizar android android-listview autocompletetextview

sonido - Android: Autocompletar TextView similar a la aplicación de Facebook



desactivar sonido facebook 2018 (2)

Primero, convierta su EditText en un MultiAutoCompleteTextView. Un MultiAutoCompleteTextView le permite reemplazar ciertas partes del texto, por ejemplo, texto después de ''@''.

El puedes hacer algo como esto:

final MultiAutoCompleteTextView inputEditText = (MultiAutoCompleteTextView) dialog.findViewById(R.id.MyEditText); String[] COUNTRIES = new String[] { "Belgium", "France", "Italy", "Germany", "Spain" }; ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line, COUNTRIES); inputEditText.setAdapter(adapter); inputEditText.setThreshold(1); //Set number of characters before the dropdown should be shown //Create a new Tokenizer which will get text after ''@'' and terminate on '' '' inputEditText.setTokenizer(new Tokenizer() { @Override public CharSequence terminateToken(CharSequence text) { int i = text.length(); while (i > 0 && text.charAt(i - 1) == '' '') { i--; } if (i > 0 && text.charAt(i - 1) == '' '') { return text; } else { if (text instanceof Spanned) { SpannableString sp = new SpannableString(text + " "); TextUtils.copySpansFrom((Spanned) text, 0, text.length(), Object.class, sp, 0); return sp; } else { return text + " "; } } } @Override public int findTokenStart(CharSequence text, int cursor) { int i = cursor; while (i > 0 && text.charAt(i - 1) != ''@'') { i--; } //Check if token really started with @, else we don''t have a valid token if (i < 1 || text.charAt(i - 1) != ''@'') { return cursor; } return i; } @Override public int findTokenEnd(CharSequence text, int cursor) { int i = cursor; int len = text.length(); while (i < len) { if (text.charAt(i) == '' '') { return i; } else { i++; } } return len; } });

Un "problema" con esto es que la ventana emergente aparecerá debajo de la vista EditText. Para moverlo hacia arriba y colocarlo debajo del texto que está escrito actualmente, puede hacer algo como esto:

inputEditText.addTextChangedListener(new TextWatcher() { @Override public void onTextChanged(CharSequence s, int start, int before, int count) { Layout layout = inputEditText.getLayout(); int pos = inputEditText.getSelectionStart(); int line = layout.getLineForOffset(pos); int baseline = layout.getLineBaseline(line); int bottom = inputEditText.getHeight(); inputEditText.setDropDownVerticalOffset(baseline - bottom); } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void afterTextChanged(Editable s) { } });

Nota: Esto actualmente no se ocupa de la posición desplegable en el caso de que haya más líneas en el texto de edición que las que se pueden mostrar.

Tengo un AutoCompleteTextView en mi aplicación. La aplicación hace uso del SDK de Facebook. Seguí el código de esta pregunta en SO: https://stackoverflow.com/a/12363961/450534 hasta el punto y tengo una actividad de búsqueda (filtrado) en funcionamiento.

Ahora, ¿cómo obtengo un autocompletado en línea como la aplicación de Facebook después de que se escribe el símbolo @ y todavía tengo el otro texto escrito por el usuario? La actividad en cuestión es para una Actualización de estado y puede contener los Amigos del usuario junto con otro texto. AutoCompleteTextView o EditText serán naturalmente de varias líneas. Para una actualización de estado, verá.

Sé por la falta de cualquier código en esta publicación, me arriesgo a recibir una votación negativa o incluso a que se cierre la pregunta. Pero es realmente un código de filtro de lista de placas de caldera estándar.

EDITAR: la aplicación FriendCaster para Android también hace lo mismo.


https://github.com/dhaval001/linkable_text_view.git

Forma sencilla de crear texto de enlace, como @nombre de usuario o # etiqueta de libro, en Android TextView y EditText con vista de texto multiautocompleta. enlace facebook e instagram

Caracteristicas

Hacer coincidir cadenas sueltas o patrones regex para establecer enlaces Cambiar el color del texto vinculado Establecer el estilo del texto vinculado: BOLD, ITALIC o BOLD_ITALIC Establecer el subrayado del texto vinculado Especificar acciones de clic de una palabra específica OnTextChangedListener listener para LinkableEditText