2010-02-09 24 views
6

Estoy escribiendo una aplicación con el widget dirigido EditText. y me gustaría crear mi propio menú de pegar &. Para reemplazar el menú predeterminado de Android en EditText, ¿qué debo hacer? ¿Simplemente anulando el clic largo? o hay otra forma de implementar? Gracias de antemano.¿Cómo puedo escribir mi propio menú contextual para copiar y pegar?

+0

Hola hacían las funciones de copiar y pegar por defecto siguen trabajando después de haber hecho su propio menú de contexto? – Muddz

Respuesta

1

Se considera algo así como un ejercicio estándar implementar la copia/pegado de la manera difícil sobrescribiendo el sistema de menú, creando los elementos del menú usted mismo y su propio búfer interno.

Sin embargo, no es así como debería hacerse si hay una mejor manera disponible en la plataforma. Reimplementar las funciones de la plataforma es bueno para aprender pero malo para el mantenimiento.

Wiki de la comunidad, ya que esta no es una respuesta real y no debería obtener un representante para esto.

+0

Mi opinión personal es la tuya, pero siempre lo hace el cliente ..., no hay forma de hacerlo sin implementar mi propio menú de copiar y pegar. De todos modos, gracias por su respuesta. – skysign

+1

Un comentario es generalmente mejor para este tipo de cosas – Casebash

+0

@casebash bien, ya que se aceptó responder, obviamente no fue así. – Joshua

2

EditarTexto ya debería tener un menú contextual habilitado. Si no fuera así, entonces tendría que habilitarlo llamando al registerForContextMenu. Una vez que tiene habilitado el menú contextual, debe agregarle elementos. Esto se hace en onCreateContextMenu usando uno de los Menu.add methods.

La parte difícil es escribir el código para onContextItemSelected después de que el usuario haya seleccionado una opción. Guardar texto en el portapapeles es simplemente una cuestión de llamar al ((ClipboardManager) getSystemService(CLIPBOARD_SERVICE)).setText("myText");. Sin embargo, primero debemos encontrar qué texto copiar. Todavía no me he figurado esta última parte, pero tengo la esperanza de que lo haga pronto.

preguntas relacionadas

+0

Creé una barra de herramientas de selección de texto/contexto personalizada donde agregué la funcionalidad para que el usuario pueda hacer un texto seleccionado en negrita/cursiva/subrayado, etc. pero después de la personalización, las funciones predeterminadas copiar/pegar/cortar ya no funcionan , pero los iconos para ellos todavía aparecen? ¿Cómo pueden ser activados nuevamente? mis propios métodos personalizados para negrita/cursiva etc. sin embargo funcionan! – Muddz

Cuestiones relacionadas