2012-04-10 8 views
7

Mam ExpandableListView, gdzie każdy parentView ma EditText (i textview) w nim. Kiedy dodałem EditText do Układu, nie pozwalał mi on już klikać ani rozszerzać ExpandableListView, wszystkie skupienia po prostu trafiają do EditText. Czy istnieje sposób na kliknięcie zarówno EditText, jak i ExpandableListView? Chcę móc kliknąć expandableListView, aby rozwinąć listę, oraz EditText, aby móc wprowadzić tekst.ExpandableListView z EditText

Dzięki

EDIT: Dodano kod mojej grupy widzenia

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; 
    } 

Odpowiedz

1

Problem jest z powodu EditText za zwłokę focusablitiy. Ponieważ są one w stanie skupić się domyślnie, spowoduje to, że twój widok rodzica będzie nieostry. Więc co trzeba zrobić, to usunąć zdolność ogniskowania swojego EditText za pomocą,

andorid:focusable="false". 

i podobnie, jeśli masz jakikolwiek przycisk w swoim macierzystym, ustawienie aktywowana fałszywe niej również pomoże. Jest to jedyny sposób na sprawienie, aby Twój widok nadrzędny został kliknięty.

+2

Pozwoliło mi to rozwinąć moją listę, ale teraz, gdy klikam w EditText, miękka klawiatura nie pojawi się ... Jak mogę to naprawić? – user1154920

+0

możesz użyć detektora kliknięcia do edycji tekstu i możesz ustawić ostrość na wartość true, dzięki czemu uzyskasz miękką klawiaturę. –

+1

Dodałem do onClickListener, a wiadomość tostowa podniosła się, więc jest wywoływana, ale klawiatura nadal nie pojawiła się .. Zgaduję, że muszę ustawić klawiaturę w specjalnym stanie, ale nie jestem pewna, która ... – user1154920