Почему при попытки получить методы из интерфейса, пишет Cannot resolve method 'isProduct()' и Cannot resolve method 'getMenuTitle()'.
ourMenuItemsя прописываю как ArrayList
private final ArrayList<MenuPosition> ourMenuItems = new ArrayList<>();
В интерефесе все есть, однако в фрагменте все равно не получается их получить. Как это можно исправить? Вот скрин проблемного фрагмента
Вот код интерфейса MenuPosition
public interface MenuPosition {
public String getIcon();
public int getId();
public String getImageUrl();
public String getMenuTitle();
public boolean isProduct();
}
Вот код проблемного фрагмента
@Override
public void onItemClick(View object, int n2) {
try {
object = (View) this.ourMenuItems.get(n2);
if (!object.isProduct()) {
if (this.materialFragmentActivityCallback != null) {
object = CatalogFragment.instance(object.getId(), object.getMenuTitle());
this.materialFragmentActivityCallback.beginFragmentManagerTransaction((Fragment)object, true);
return;
}
} else {
Intent intent = new Intent(getActivity(),ProductActivity.class);
intent.putExtra("PRODUCT_ID", object.getId());
this.startActivity(intent);
}
return;
}
catch (Exception exception) {
return;
}
}
Вы пытаетесь переписать метод onItemClick(View object, int n2), которого нет в вашем интерфейсе. Судя по этой ссылке, даже во View нет метода onItemClick(View object, int n2)
Далее, у вас View object то View как тут object = (View) this.ourMenuItems.get(n2); ,то Fragment как тут (Fragment)object, true).
Судя по тому, что у вас оба метода из MenuPosition, а именно isProduct() и getMenuTitle() подсвечиваются красным, то вы не имплемитировали интерфейс.
Продвижение своими сайтами как стратегия роста и независимости