Tengo un activity
con dos fragments
. No estoy usando <fragment/>
etiquetas, tengo dos clases que se extiende Fragment
, en ese fragmento, que tengo:Fragmentos y receptores de difusión
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.bfragment, container, false); // this will inflate the Fragment in activity.
}
Ahora el problema es que estoy recibiendo algunos receptores de radiodifusión en la actividad de la que se actualizan algunos receptores de la interfaz de usuario de primer fragmento y algunas actualizaciones de la interfaz de usuario de 2nd.
Uno de mi receptor de radiodifusión definida en mi Acitivity principal es:
private BroadcastReceiver bcReceived = new BroadcastReceiver() {
@Override
public void onReceive(Context arg0, Intent intent) {
Log.d("", "BC Object Received");
ActionBar actionbar = getActionBar();
actionbar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
ActionBar.Tab bTab = actionbar.newTab().setText("B");
Fragment fragment = new BFragment();
bTab.setTabListener(new MyTabsListener(fragment));
actionbar.addTab(bTab, true);
final LinearLayout linearLayout = (LinearLayout) findViewById(R.id.bTable); // Getting null pointer exception here. linearLayout is not getting initialized.
Quiero usar el LinearLayout arriba y utilizarlo para inflar una vista en ella. Pero obteniendo NPE.
aquí, cuando algunos receptores de difusión actualizan el primer fragmento, funciona correctamente, pero cuando un receptor de difusión actualiza el segundo fragmento de la actividad, obtengo NPE.
Mi pregunta es: ¿Cómo y dónde debo actualizar el fragmento? ¿Debería estar dentro de mi actividad? Si es así, ¿en qué método? si no, ¿dónde debería actualizar el fragmento?
Por favor, ayúdame !!!
La disposición (R.layout.bfragment) es el mismo para los dos fragmentos? ¿R.id.bTable está presente en ambos fragmentos o no? –
si está preguntando si ambos diseños son similares, entonces no. Pero ambos diseños se inflan en el mismo contenedor reemplazando el diseño anterior. – Shrikant
R.id.bTable es su contenedor ¿verdad? –