Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
package com.cesams.twogetskills.fragment;import android.content.Context;import android.os.Build;import android.os.Bundle;import android.text.Html;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import androidx.annotation.NonNull;import androidx.annotation.Nullable;import androidx.fragment.app.Fragment;import androidx.lifecycle.LifecycleOwner;import androidx.recyclerview.widget.GridLayoutManager;import androidx.recyclerview.widget.RecyclerView;import com.cesams.twogetskills.Constants;import com.cesams.twogetskills.R;import com.cesams.twogetskills.adapter.QuizRangeSimpleAnswerListViewAdapter;import com.cesams.twogetskills.pojo.AnswerRange;import com.cesams.twogetskills.entity.Question;import com.cesams.twogetskills.pojo.QuizResponse;import com.cesams.twogetskills.skeleton.IQuizActivity;import java.util.ArrayList;import java.util.List;import com.codesgood.views.JustifiedTextView;public class QuizRangeSimpleFragment extends Fragment implements LifecycleOwner {private final String TAG = "C2GS - QuizRangeFrag";private IQuizActivity iQuizActivity;private RecyclerView recyclerView;private QuizRangeSimpleAnswerListViewAdapter adapter;private Question mQuestion;private List<AnswerRange> mAnswers;private List<QuizResponse> mQuizResponses;private JustifiedTextView justifyTextView;// data is passed into the constructorpublic QuizRangeSimpleFragment(Context context) {iQuizActivity = (IQuizActivity) context ;this.mQuestion = iQuizActivity.getQuestionActive();this.mQuizResponses = iQuizActivity.getQuizResponses();this.mAnswers = new ArrayList<>();}@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {return inflater.inflate(R.layout.fragment_quiz_range_simple_answer, container, false);}@Overridepublic void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {super.onViewCreated(view, savedInstanceState);mAnswers = new ArrayList<>();GridLayoutManager gridLayoutManager = new GridLayoutManager(getActivity(), 2);adapter = new QuizRangeSimpleAnswerListViewAdapter(getActivity(), mQuestion, mAnswers, mQuizResponses);justifyTextView = (JustifiedTextView) getView().findViewById(R.id.justifytext_quiz_range_simple_answer);recyclerView = (RecyclerView) getView().findViewById(R.id.list_quiz_range_simple_answer);recyclerView.setAdapter(adapter);recyclerView.setLayoutManager( gridLayoutManager);recyclerView.setHasFixedSize(true);}@Overridepublic void onResume() {super.onResume();Log.d(TAG, "onResume");loadData();}@Overridepublic void onHiddenChanged(boolean hidden) {super.onHiddenChanged(hidden);Log.d(TAG, "onHiddenChanged : " + (hidden ? "true" : "false"));if(!hidden) {loadData();}}private void loadData(){if(adapter != null) {mQuestion = iQuizActivity.getQuestionActive();if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {justifyTextView.setText("" + Html.fromHtml(mQuestion.getText(), Html.FROM_HTML_MODE_COMPACT));} else {justifyTextView.setText("" + Html.fromHtml(mQuestion.getText()));}mAnswers.clear();int max = 0;if (mQuestion.getType().equals(Constants.QUESTION_TYPE_RANGE_1_5)) {max = 5;} else if (mQuestion.getType().equals(Constants.QUESTION_TYPE_RANGE_1_6)) {max = 6;} else if (mQuestion.getType().equals(Constants.QUESTION_TYPE_RANGE_1_10)) {max = 10;} else {max = 0;}for (int i = 1; i <= max; i++) {AnswerRange answerRange = new AnswerRange(i, String.valueOf(i));mAnswers.add(answerRange);}adapter.resetSelection();adapter.notifyDataSetChanged();}}}