Hello Guys, How are you all? Hope You all Are Fine. In my app, I am used setOnNavigationItemSelectedListener() but now I am facing issue that ‘setOnNavigationItemSelectedListener(com.google.android.material.bottomnavigation.BottomNavigationView.OnNavigationItemSelectedListener)’ is deprecated in Java. So Here I am Explain to you all the possible solutions here.
Without wasting your time, Let’s start This Article to Solve This Error.
How setOnNavigationItemSelectedListener is deprecated Error Occurs ?
In my app, I am used setOnNavigationItemSelectedListener() but now I am facing an issue that.
'setOnNavigationItemSelectedListener(com.google.android.material.bottomnavigation.BottomNavigationView.OnNavigationItemSelectedListener)' is deprecated
How To Solve setOnNavigationItemSelectedListener is deprecated Error ?
- How To Solve setOnNavigationItemSelectedListener is deprecated Error?
To Solve setOnNavigationItemSelectedListener is deprecated Error Here you can try setonItemSelectedListener. It is working the same as setOnNavigationItemSelectedListener()
- setOnNavigationItemSelectedListener is deprecated
To Solve setOnNavigationItemSelectedListener is deprecated Error Here you can try setonItemSelectedListener. It is working the same as setOnNavigationItemSelectedListener()
Solution 1: Use setonItemSelectedListener
Here you can try setonItemSelectedListener
. It is working the same as setOnNavigationItemSelectedListener()
bnv.setOnItemSelectedListener(new NavigationBarView.OnItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
int id = item.getItemId();
switch(id){
//check id
}
return true;
}
});
You Can use in kotlin like
bnv.setOnItemSelectedListener { item ->
when (item.itemId) {
}
true
}
Solution 2: Use NavigationBarView.setOnItemSelectedListener from its base class
You can use NavigationBarView.setOnItemSelectedListener from its base class:
/**
* Set a listener that will be notified when a navigation item is selected. This listener will
* also be notified when the currently selected item is reselected, unless an {@link
* OnItemReselectedListener} has also been set.
*
* @param listener The listener to notify
* @see #setOnItemReselectedListener(OnItemReselectedListener)
*/
public void setOnItemSelectedListener(@Nullable OnItemSelectedListener listener) {
selectedListener = listener;
}
Summery
It’s all About this issue. Hope all solution helped you a lot. Comment below Your thoughts and your queries. Also, Comment below which solution worked for you?
Also, Read
Thank You. It worked for me.