У меня есть функция в одном из моих фрагментов, которая проверяет, изменили ли карты вид цветов, теперь я хочу получить доступ к этой функции, используя архитектуру модели представления, к другому фрагменту, я знаю, что для доступа к этому я должен использовать модель представления но я не совсем понимаю, как мне это сделать,
вот моя функция из фрагмента A
public boolean checkIthestudentiscleared()
{
//get the color of the cardview and check which color is it if #2b434f then he /she is cleared
int background_colorbursar = cardViewbusar.getCardBackgroundColor ().getDefaultColor ();
int background_colorsnal = cardView.getCardBackgroundColor ().getDefaultColor ();
int background_colorsuahab = cardViewsuahub.getCardBackgroundColor ().getDefaultColor ();
int background_colorsports = cardViewsports.getCardBackgroundColor ().getDefaultColor ();
int background_colorcict = cardViewcict.getCardBackgroundColor ().getDefaultColor ();
int background_colorict_service = cardViewitcservices.getCardBackgroundColor ().getDefaultColor ();
int background_coloreudtech = cardViewedutech.getCardBackgroundColor ().getDefaultColor ();
int background_coloritcb = cardViewitcb.getCardBackgroundColor ().getDefaultColor ();
if(background_colorbursar == Color.parseColor ("#ffffff") || background_colorcict == Color.parseColor ("#ffffff")
|| background_colorict_service == Color.parseColor ("#ffffff") || background_coloritcb == Color.parseColor ("#ffffff")
|| background_colorsnal == Color.parseColor ("#ffffff") || background_coloreudtech == Color.parseColor ("#ffffff") ||
background_colorsuahab == Color.parseColor ("#ffffff") || background_colorsports == Color.parseColor ("#ffffff")){
Toast.makeText (getContext (), "Your not Cleared can't create the Clearance Report!", Toast.LENGTH_SHORT).show ();
return false;
}
else
{
Toast.makeText (getContext (), "The dean Has Approved your Clearance!", Toast.LENGTH_SHORT).show ();
checkClearanceStatusViewModel.setValue ();
return true;
}
}
Это мой видмодальный класс
public class CheckClearanceStatusViewModel extends AndroidViewModel {
public CheckClearanceStatusViewModel(@NonNull Application application) {
super (application);
}
}
только что попытался сделать это, но мне не хватает логики c Я хочу иметь возможность проверить правильность этой функции из другого фрагмента
on мой фрагмент, который имеет функцию
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated (view, savedInstanceState);
//init the viewmodel
checkClearanceStatusViewModel = new ViewModelProvider (this).get (CheckClearanceStatusViewModel.class);
checkClearanceStatusViewModel.getValue ().observe (getActivity (), new Observer<Boolean> () {
@Override
public void onChanged(Boolean aBoolean) {
//logic here
}
});
}