Исключительно, если это глупый вопрос.Доступ к внешнему классу Java для интерфейсов интерфейса внутреннего класса
У меня есть внешний интерфейс «Фрагмент» с интерфейсом внутреннего класса. Этот интерфейс реализуется только одним другим классом Activity, используя «реализует OuterFragment.ParentActivityListener».
Я хотел бы иметь несколько констант для использования с методами интерфейса. Но эти константы также должны быть доступны во внешнем классе. Есть ли способ получить к ним доступ из внешнего класса, как показано ниже? Это плохой шаблон для использования, хотя будет очень ограниченное использование этого интерфейса (= 1)?
public class OuterFragment extends Fragment {
public interface ParentActivityListener {
public int OKBUTTON = 5;
public void onPlayertimerMessage(int idFromFragment, int idFromPosition, int iAction);
}
@Override
public View onCreateView(LayoutInflater inflater,
ViewGroup container, Bundle savedInstanceState) {
// Access interface constant from here?
}
}
Любой ввод оценивается!
Вы уверены, что 'OuterFragment.' необходим? Интерфейс ParentActivityListener должен быть в пределах внутреннего класса. – aioobe
@aioobe Я думаю, что лучше использовать полное имя. Он должен работать без OuterFragment при доступе из OuterFragment. – Eran
спасибо, что работает отлично! Лучше ли использовать enum вместо этого в классе интерфейса? (Он работает также без «OuterFragment.», Но я сохраню его там.) – Koniak