Cómo obtener todos los ID de botones de una sola vez en Android

Tengo 16 Button s en mi Activity y tengo que inicializar los dentro onCreate (). ¿Hay alguna manera de inicializar todos los botones en un solo código de línea? (Loops, etc) El código debe tomar todos los botones R.id. Desde XML Layout y proceso ….

Digamos que has llamado el botón button_0, button_1, .. button_15 . Tu puedes hacer:

 for (int i = 0; i < 16; i++) { int id = getResources().getIdentifier("button_"+i, "id", getPackageName()); button[i] = (Button) findViewById(id); } 

Bueno, si todos los 16 de esos botones están dentro de una vista o disposición, entonces usted podría hacer lo siguiente.

 ArrayList<View> allButtons; allButtons = ((LinearLayout) findViewById(R.id.button_container)).getTouchables(); 

Esto supone que su contenedor (en este ejemplo un LinearLayout ) no contiene Touchable que no es un Button .

  1. Use la biblioteca de inyecciones de vista de Butterknife
  2. Descargar Android ButterKnife Zelezny plugin para Android Studio o Intellij IDEA e inicializar todas sus vistas desde el diseño actual de 1 clic
  • Cómo implementar un ListView completamente dentro de un ScrollView
  • Especificación de un targetPackage para una intención en un archivo XML de un proyecto de biblioteca
  • ¿Cómo se utiliza obtenerStyledAttributes (int ) con temas internos de Android
  • Los márgenes de ConstraintLayout no funcionan
  • Android expandablelistview cómo establecer el espacio entre los elementos de los grupos
  • Cambiar el color del icono xml drawable
  • Android El teclado suave flotará solo un diseño específico
  • ¿Pueden los recursos de ID de Android referirse hacia adelante?
  • GridLayout heterogéneo
  • Android: cómo escalar un diseño con tamaño de pantalla
  • Alinear dos botones horizontalmente
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.