Я получаю сообщение об ошибке компиляции для моего фрагмента newInstance, может кто-нибудь сказать мне, что не так с моим кодом?
Когда я удаляю второй массив String, все работает как положено, но при передаче другого String Array выдается ошибка:
ошибка: метод newInstance в классе LightFragment нельзя применять к данным типам;
обязательно: int, String [], String [], int
найдено: int, String [], int
причина: фактические и формальные списки аргументов различаются по длине
Фрагмент вызова:
`return LightFragment.newInstance(position+1,devicesMacArray,devicesTypeArray, deviceCounter);`
и в моем классе Fragment:
`public static LightFragment newInstance(int pageNumber, String[] deviceMac,String[] deviceType, int numOfDevices) {
LightFragment fragment = new LightFragment();
Bundle args = new Bundle();
args.putInt("PageNumber", pageNumber);
args.putInt("numberOfDevices", numOfDevices);
args.putStringArray("deviceMacArray",deviceMac);
//args.putStringArray("deviceTypeArray",deviceType);
fragment.setArguments(args);
return fragment;
}`
Я передаю два строковых массива: один сохранил адреса Mac, а другой - тип устройства.
позже, чтобы использовать их во фрагменте.
По какой-то причине я могу передать только один массив строк, как только я добавлю второй, компилятор выдаст ошибку, упомянутую выше.