Android Cambio de un diseño normal a un error de diseño de tabulación en los botones de imagen y otros?

Lo seguí para crear una emisión de radio de Android

Por ahí está funcionando bien Así que estoy tratando de añadir un tab-layout a este

Así que seguí esto para agregar el diseño de la pestaña

Allí he agregado pero tengo mucho error así que he cambiado algunos como

DE

protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main_activity); 

A esto

 @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View viewRoot = inflater.inflate(R.layout.main_activity, container, false); 

Y agregó viewRoot.findViewById en algunos lugares en on-create pero después en crear lo que nunca hay que he dado como getActivity().findViewById

Porque he dado return viewRoot; En onCreate no es posible

Ahora estoy recibiendo errores en play.setBackground(getResources().getDrawable(R.drawable.volume0));

Me gusta

  java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.ImageView.setBackground(android.graphics.drawable.Drawable)' on a null object reference at star.yx.tabview.ProfileFragment.updatePlayStatus(ProfileFragment.java:370) at star.yx.tabview.ProfileFragment.setIFace(ProfileFragment.java:205) at star.yx.tabview.ProfileFragment.onCreateView(ProfileFragment.java:158) at android.support.v4.app.Fragment.performCreateView(Fragment.java:2184) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1298) at android.support.v4.app.FragmentManagerImpl.moveFragmentsToInvisible(FragmentManager.java:2323) at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2136) at android.support.v4.app.FragmentManagerImpl.optimizeAndExecuteOps(FragmentManager.java:2092) at android.support.v4.app.FragmentManagerImpl.execSingleAction(FragmentManager.java:1969) at android.support.v4.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:620) at android.support.v4.app.FragmentPagerAdapter.finishUpdate(FragmentPagerAdapter.java:143) at android.support.v4.view.ViewPager.populate(ViewPager.java:1268) at android.support.v4.view.ViewPager.populate(ViewPager.java:1116) at android.support.v4.view.ViewPager.onMeasure(ViewPager.java:1642) at android.view.View.measure(View.java:18596) at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:728) at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:464) at android.view.View.measure(View.java:18596) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5827) at android.widget.FrameLayout.onMeasure(FrameLayout.java:430) at android.support.v7.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:139) at android.view.View.measure(View.java:18596) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5827) at android.support.v7.widget.ActionBarOverlayLayout.onMeasure(ActionBarOverlayLayout.java:393) at android.view.View.measure(View.java:18596) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5827) at android.widget.FrameLayout.onMeasure(FrameLayout.java:430) at android.view.View.measure(View.java:18596) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5827) at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1435) at android.widget.LinearLayout.measureVertical(LinearLayout.java:721) at android.widget.LinearLayout.onMeasure(LinearLayout.java:612) at android.view.View.measure(View.java:18596) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5827) at android.widget.FrameLayout.onMeasure(FrameLayout.java:430) at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2897) at android.view.View.measure(View.java:18596) at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2248) at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1306) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1548) at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1191) at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6642) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:777) at android.view.Choreographer.doCallbacks(Choreographer.java:590) at android.view.Choreographer.doFrame(Choreographer.java:560) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:763) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:145) at android.app.ActivityThread.main(ActivityThread.java:5951) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1400) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java: 

He agregado mi código en ProfileFragment para fines de prueba ….

¿Puede alguien Sugerirme Cómo utilizar Mi actividad En fragmentos como mi ejemplo de diseño de mesa Por favor, me sugieren en este tipo

Actualizar

Todo lo que estoy tratando.

Sólo estoy usando mi diseño de radio en un diseño de tableta Así que en una sola pestaña puedo reproducir la radio en otros que puedo utilizar algún otro. Pero aquí mi servicio de radio no está en fragmento / disposición de la lengüeta Así que estoy consiguiendo Muchos de errores ¿Puede cualquier persona sugerirme Cómo agregar Tab-disposición a mi actividad de radio Seguí mi tutoriales del androide pero intenté y cansado Por favor me ayude Cómo utilizar Esos dos ejemplos en uno …

Porque

En onResume está llamando setIFace() método setIFace() que activa updatePlayStatus método updatePlayStatus .

Si miras el método updatePlayStatus verás que hay una reproducción ImageView que está asignada a ver con ID icon_play

 private void updatePlayStatus() { ImageView play = (ImageView) findViewById(R.id.icon_play); if ("stop".equals(etat_lecture) || "pause".equals(etat_lecture)) { play.setBackground(getDrawable(R.drawable.ic_equalizer0)); } else { play.setBackground(getDrawable(R.drawable.ic_equalizer)); } } 

Si Android no puede encontrar ninguna vista con ID = icon_play , Android lo asignará automáticamente a null . Más tarde usted está llamando play.setBackground , puesto que la variable del play es null en su caso, usted está consiguiendo la excepción del puntero nulo.

Solución

  • En primer lugar, compruebe si está utilizando el diseño correcto en su clase de fragmentos, es decir. Debe haber alguna vista con ID icon_play .
  • En segundo lugar, tratar de limpiar y construir el proyecto. Puede ocurrir debido a una clase de R.java generada incorrectamente
  • Lo más importante, use viewRoot.findViewById lugar de getActivity().findViewById , getActivity podría devolver null , o mejor utilizar ButterKnife para evitar todos aquellos que tienen una plantilla

El código de MainActivity estaba completo, lo he dividido en fragmentos

Introduzca aquí la descripción de la imagen Introduzca aquí la descripción de la imagen

Puedes echar un vistazo al código fuente de mi GitHub

https://github.com/hiteshsahu/Android-Radio

¿Puedes compartir tu código? Creo que deberías cambiar RadioActivity en RadioFragment, que se agregará a tablayout más simple.

  • Cómo obtener una referencia a LocationManager dentro de un fragmento
  • FragmentPagerAdapter dentro de Fragment
  • Doble fragmento de rotación de Android con ActionBar
  • El fragmento de cuadro de diálogo personalizado se bloquea cuando se llama al método Setter
  • Fragmento en ViewPager utilizando FragmentPagerAdapter está en blanco la segunda vez que se ve
  • Atascado con portar de la actividad a fragmentar
  • Selección de la imagen de la galería con fragmento
  • ¿Qué método se desencadena en la creación de AlertDialog?
  • Transmisión de datos de un fragmento en una actividad de otra actividad
  • NullPointerExecption al llamar a un PhoneStateListener en un servicio
  • DialogFragment lanza ClassCastException si se llama desde Fragment
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.