Я довольно новичок в программировании Android, поэтому прошу прощения, если вопрос глупый.Я попытался найти и просмотреть несколько учебных пособий по YouTube, но не смог найти ничего, что могло бы ответить на мой вопрос.
Итак, теперь у меня есть несколько фрагментов по 5 радиогрупп в каждой.Я дошел до точки, где я могу заставить приложение вычислять и отображать «счет» для выбранных радиокнопок.Но я хотел бы включить одну кнопку, которая может взять все эти радиокнопки и вычислить оценку для всех фрагментов за один раз.Связки были бы способом пойти?Если так, как я могу сделать кнопку, которая передает все сразу?
Я прилагаю код для моего фрагмента:
package se.example.bevarade;
import android.os.Bundle;
import android.support.annotation.NonNull;
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.Button;
import android.widget.RadioButton;
import android.widget.TextView;
public class DukadeBordFragment extends Fragment {
int dukadeScore;
View view;
public DukadeBordFragment(){
// Empty public constructor
}
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
view = inflater.inflate(R.layout.dukade_bord, container, false);
Button subbeBtn = (Button) view.findViewById(R.id.btn_submit);
subbeBtn.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick (View v){
dukadeScore = checkAnswers();
displayFinalScore(dukadeScore);
}
});
return view;
}
public int checkAnswers() {
/* Question One - The correct answer is RadioButton q14*/
RadioButton dukq1a = view.findViewById(R.id.duk_q1rb_alt1);
boolean dukQue1 = dukq1a.isChecked();
if (dukQue1) {
dukadeScore += 1;
}
/* Question Two - The correct answer is RadioButton q14*/
RadioButton dukq2a = view.findViewById(R.id.duk_q2rb_alt1);
boolean dukQue2 = dukq2a.isChecked();
if (dukQue2) {
dukadeScore += 1;
}
/* Question Three - The correct answer is RadioButton q14*/
RadioButton dukq3a = view.findViewById(R.id.duk_q3rb_alt1);
boolean dukQue3 = dukq3a.isChecked();
if (dukQue3) {
dukadeScore += 1;
}
/* Question Four - The correct answer is RadioButton q14*/
RadioButton dukq4a = view.findViewById(R.id.duk_q4rb_alt1);
boolean dukQue4 = dukq4a.isChecked();
if (dukQue4) {
dukadeScore += 1;
}
/* Question Five - The correct answer is RadioButton q14*/
RadioButton dukq5a = view.findViewById(R.id.duk_q5rb_alt1);
boolean dukQue5 = dukq5a.isChecked();
if (dukQue5) {
dukadeScore += 1;
}
return dukadeScore;
}
private void displayFinalScore(int score){
TextView scoreView = view.findViewById(R.id.score_text);
scoreView.setText(getString(R.string.you_scored) + score + getString(R.string.out_of_total));
dukadeScore = 0;
}
}