Создайте случайное число R между 0 и 1.
Если R в [0, 0.1) -> 1
Если R в [0,1, 0,2) -> 2
Если R в [0.2, 1] -> 3
Если вы не можете напрямую получить число от 0 до 1, сгенерируйте число в диапазоне, который будет производить столько же точности как пожелаете. Например, если у вас есть веса для
(1, 83,7%) и (2, 16,3%), сверните число от 1 до 1000. 1-837 - это 1. 838-1000 - это 2 .
В одном родительском действии ... просто используйте глобальную переменную, которая может получить доступ внутри того же родительского действия, или
Другой прием, вы можете попробовать предпочтение, чтобы предпочтение могло читать в любом месте.
Активный фрагмент данных
sharedPref = context.getSharedPreferences(context.getPackageName(),MODE_PRIVATE);
SharedPreferences.Editor prefEditor = sharedPref.edit();
prefEditor.putString(sKey, sValue);
prefEditor.apply();
Данные, считанные из другого фрагмента
sharedPref = context.getSharedPreferences(context.getPackageName(),MODE_PRIVATE);
sValue = sharedPref.getString(sKey,defValue);