2012-04-10 14 views
7

Tengo un ExpandableListView donde cada parentView tiene un EditText (y una vista de texto) en él. Cuando agregué EditText al diseño, ya no me dejaba hacer clic o expandir el ExpandableListView, todo el foco solo va al EditText. ¿Hay alguna manera de hacer que se pueda hacer clic tanto en EditText como en ExpandableListView? Quiero poder hacer clic en expandableListView para expandir la lista, y EditText para poder ingresar texto.ExpandableListView con un EditText

Gracias

EDITAR: Código añadido de mi punto de vista grupo

public View getGroupView(int groupPosition, boolean isExpanded, 
          View convertView, ViewGroup parent) { 

     if (convertView == null) { 
      LayoutInflater inflater = (LayoutInflater) myContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
      convertView = inflater.inflate(R.layout.group_row, null); 
     } 

     TextView playerName = (TextView) convertView.findViewById(R.id.playerName); 
     playerName.setText(groupElements[groupPosition]); 
     final EditText holeScore = (EditText) convertView.findViewById(R.id.score); 
     holeScore.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       Toast.makeText(scoreCard.this, "On CLick", Toast.LENGTH_SHORT).show(); 
       holeScore.setFocusable(true); 
      } 
     }); 
     return convertView; 
    } 

Respuesta

1

El problema se debe a que de forma predeterminada focusablitiy de EditarTexto. Dado que son capaces de centrarse por defecto, esto hará que su vista principal esté desenfocada. Así que lo que tiene que hacer es quitar la capacidad de enfoque de su EditarTexto utilizando,

andorid:focusable="false". 

Y del mismo modo si tiene cualquier botón en su padre, el establecimiento de enfocable falsa para que también ayudará. Esta es la única forma en que puede hacer clic en la vista principal.

+2

Esto me permitió expandir mi lista, pero ahora cuando hago clic en EditText no aparece el teclado ... ¿Cómo puedo solucionarlo? – user1154920

+0

puede usar un detector de clics para su texto de edición y dentro de él puede establecer la capacidad de enfoque en verdadero, esto le ayudará a obtener el teclado virtual. –

+1

Agregué un onClickListener, y apareció el mensaje de brindis por lo que se está llamando, pero el teclado todavía no apareció. Supongo que tengo que configurar el teclado virtual en un estado especial, pero no estoy seguro de cuál ... – user1154920

Cuestiones relacionadas