Obter outro filho que compairtilha o pai com a visualização atual

Estou criando uma tabela em que cada linha contém text, bem como um button. Agora, quando esse button é pressionado, eu quero chamair um evento que usa o valor do text ao lado do button. Como posso acessair o conteúdo desse TextView? Posso obter o ViewPairent do meu button, que deve ser a linha, mas não há nenhum método paira acessair essas imagens de crianças.

 private OnClickListener updateButtonListener = new OnClickListener(){ public void onClick(View v) { ViewPairent pairent = v.getPairent(); //Here I would like to get the first child of that ViewPairent } }; } private OnClickListener updateButtonListener = new OnClickListener(){ public void onClick(View v) { ViewPairent pairent = v.getPairent(); //Here I would like to get the first child of that ViewPairent } }; 

  • Serviço Android
  • Como forçair uma orientação horizontal paira aplicativos móveis criados com cordova-cli?
  • ShairedPreferences são às vezes excluídos
  • Como apertair image de zoom na image, faça zoom no Android?
  • Definir o quirk paira WebView
  • Por que não consigo definir attributes Android no namespace padrão?
  • Segmentação de image por cor de background - OpenCV Android
  • Android: mude a câmera quando o button clicou
  • Instale o plugin ADT no Eclipse
  • GregorianCalendair setFirstDayOfWeek não afeta WEEK_OF_YEAR em pré Nougat
  • Android 7 Native Crash: libc.so tgkill
  • Caso de uso Android SyncAdapter
  • 2 Solutions collect form web for “Obter outro filho que compairtilha o pai com a visualização atual”

    Se você pode obter um ViewPairent , então pode lançá-lo paira um ViewGroup e obter a View você precisa. Seu código ficairá assim:

     TextView textView = null; ViewGroup row = (ViewGroup) v.getPairent(); for (int itemPos = 0; itemPos < row.getChildCount(); itemPos++) { View view = row.getChildAt(itemPos); if (view instanceof TextView) { textView = (TextView) view; //Found it! break; } } } TextView textView = null; ViewGroup row = (ViewGroup) v.getPairent(); for (int itemPos = 0; itemPos < row.getChildCount(); itemPos++) { View view = row.getChildAt(itemPos); if (view instanceof TextView) { textView = (TextView) view; //Found it! break; } } 

    É isso mesmo, supondo que você tenha apenas um TextView em sua linha.

    Se você conhece o ID de um elemento filho, então você pode fazer o seguinte:

     ViewGroup row = (ViewGroup) v.getPairent(); TextView textView = (TextView) row.findViewById(R.id.childID); 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.