没有这样的实例字段:' bottomNavigationView'

时间:2016-10-25 13:33:09

标签: android android-support-library bottomnavigationview

我正在使用Android支持库中新发布的Bottom Navigation View - 25.0.0。我正在尝试setOnNavigationItemSelectedListener,但没有发生任何事情。当我尝试调试项目时,我看到错误:"没有这样的实例字段:' bottomNavigationView'",但我的bottomNavigationView已初始化,方法" getMaxItemCount&#34 ;工作得很好。

我意识到它不仅仅是" navigationListener"问题,还有onClickListener。因为这段代码:

bottomNavigationView = (BottomNavigationView) viewHierarchy.findViewById(R.id.tender_bottom_navigation);
bottomNavigationView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Toast toast = Toast.makeText(getActivity(), "clicky-clicky", Toast.LENGTH_LONG);
            toast.show();
        }
    });

也提供相同的错误。 我在网站上看到了与布尔值相同的错误,但最常见的答案是"重启android studio /清理项目"。我已经做了。你有什么想法吗?

可能是没有办法在片段里面实现bottomNavigationView?

编辑:我在活动课中尝试了这段代码,但它确实有效!那么为什么他会在片段中丢掉这个领域呢?这对我来说仍然是个谜。

error

编辑2:整个片段代码。

public class NewTenderFragment extends Fragment {

   BottomNavigationView bottomNavigationView;

   FragmentManager fragmentManager;
   FragmentTransaction fragmentTransaction;
   @Override
   public void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
   }

   @Override
   public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

       View viewHierarchy = inflater.inflate(R.layout.fragment_new_tender, container, false);
       bottomNavigationView = (BottomNavigationView) viewHierarchy.findViewById(R.id.tender_bottom_navigation);
       int t = bottomNavigationView.getMaxItemCount(); //this returns "5"
       bottomNavigationView.setOnClickListener(new View.OnClickListener() { //this returns such error
        @Override
        public void onClick(View view) {
            Toast toast = Toast.makeText(getActivity(), "clicky-clicky", Toast.LENGTH_LONG);
            toast.show();
        }
    });
   return viewHierarchy;
 }

0 个答案:

没有答案