Моя проблема со значениями EditTexts решена ( Передача данных из фрагмента в другой ), так что теперь, наконец, я могу перейти к работе с этими значениями.Но кто еще кроме того, что у меня есть другая проблема?Я не знаю, но у меня есть некоторые.
Итак, моя цель - получить 5 значений от пользователя, и с этими значениями я хочу работать (вычислить среднее).
КакЯ упоминал в предыдущей теме, у меня есть класс Java, который имеет много методов.Одним из таких методов является калькулятор оценок.
Часть моего среднего Java-класса:
package com.example.afotel;
import java.util.ArrayList;
public class Average {
double numberOfGradeOne, numberOfGradeTwo, numberOfGradeThree, numberOfGradeFour, numberOfGradeFive;
private double numberOfGrades, gradeSum, gradeAverage;
void calculateAverage (double numberOfGradeFive, double numberOfGradeFour, double numberOfGradeThree, double numberOfGradeTwo, double numberOfGradeOne) {
numberOfGrades=numberOfGradeFive+numberOfGradeFour+numberOfGradeThree+numberOfGradeTwo+numberOfGradeOne;
gardeSum=5*numberOfGradeFive+4*numberOfGradeFour+3*numberOfGradeThree+2*numberOfGradeTwo+numberOfGradeOne;
gradeAverage=gradeSum/numberOfGrades;
}
public double getAverage () {
return gradeAverage;
}
Во втором фрагменте (jegyekFelLe (не из-за английского)) я хочу вызвать метод калькулятора оценок класса Java.
package com.example.afotel;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.TextView;
public class jegyekFelLe extends Fragment {
public jegyekFelLe() {
}
@Nullable
@Override
public View onCreateView(LayoutInflater inflater,@Nullable ViewGroup container,
@Nullable Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_jegyek_fel_le, container, false);
Bundle bundle = getArguments();
String gradeFive = bundle.getString("Five");
String gradeFour = bundle.getString("Four");
String gradeThree = bundle.getString("Three");
String gradeTwo = bundle.getString("Two");
String gradeOne = bundle.getString("One");
Average average = new Average();
double five, four, three, two, one;
five=Double.valueOf(gradeFive);
four=Double.valueOf(gradeFour);
three=Double.valueOf(gradeThree);
two=Double.valueOf(gradeTwo);
one=Double.valueOf(gradeOne);
averaga.calculateAverage (five,four, three, two, one);
double averageH=0;
averageH=average.getAverage();
gradeFive = String.valueOf(averageH);
TextView averageText = (TextView) rootView.findViewById(R.id.average_id);
averageText.setText(gradeFive);
return rootView;
}
}
Как видите, я подумал, что если я сначала вызову метод Calculate, чем получатель, я смогу достичь результата, но он не работает.Я ожидал этого.Каково решение?Я беспомощен с этим.Что и / или как мне следует решить проблему, чтобы работать с 5 входами с помощью Calculate Average, а затем получить окончательное значение для отображения во втором фрагменте?
Заранее спасибо за помощь!