Я пытаюсь инициализировать все кнопки панели навигации и назначать черный цвет фона, когда пользователь нажимает на одну из кнопок, что нужно менять цвет, а все остальные должны оставаться черными. Но я получаю следующее сообщение об ошибке:android java.langNullPointerException Ссылка на нулевой объект
Attempt to invoke virtual method 'android.view.View android.widget.LinearLayout.getChildAt(int)' on a null object reference
public void bottomNavIcons(View view){
for(int i=0;i<Constants.bottom_nav_icon.length;i++) {
LinearLayout linearLayout = (LinearLayout) view.findViewById(R.id.bottom_nav_bar);
ImageButton imageButton = new ImageButton(getActivity());
imageButton.setClickable(true);
imageButton.setOnClickListener(onClickListener);
imageButton.setImageResource(Constants.bottom_nav_icon[i]);
imageButton.setBackgroundColor(Color.BLACK);
imageButton.setPadding(70, 0, 70, 0);
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
linearLayout.addView(imageButton, layoutParams);
}
}
View.OnClickListener onClickListener = new View.OnClickListener() {
@Override
public void onClick(View v) {
LinearLayout linearLayout = (LinearLayout) v.findViewById(R.id.bottom_nav_bar);
for(int i=0;i<Constants.bottom_nav_icon.length;i++) {
ImageView imageButton = (ImageView) linearLayout.getChildAt(i);
imageButton.setBackgroundColor(Color.BLACK);
}
v.setBackgroundColor(Color.BLUE);
}
};
U были правы !! Спасибо. – digiVader