There is a class ScoreCardActivity where the work with the MPAndroidChart library is described, namely the work with PieChart (round diagram). The studio highlights in red such lines:

public class ScoreCardActivity extends BaseActivity implements OnChartValueSelectedListener

(getString (R.string.score_card))

(yvalues, AppConstants.EMPTY_STRING)

(xVals, dataSet)

The question is, why is this happening?

public class ScoreCardActivity extends BaseActivity implements OnChartValueSelectedListener { private Activity mActivity; private Context mContext; private Button mBtnShare, mBtnPlayAgain; private TextView mScoreTextView, mWrongAnsTextView, mSkipTextView, mGreetingTextView; private int mScore, mWrongAns, mSkip; private int mQuestionsCount; private String mCategoryId; private ArrayList<ResultModel> mResultList; private ResultAdapter mAdapter = null; private RecyclerView mRecyclerResult; private PieChart mPieChart; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); initVar(); initView(); initFunctionality(); initListener(); } private void initVar() { mActivity = ScoreCardActivity.this; mContext = mActivity.getApplicationContext(); Intent intent = getIntent(); if (intent != null) { mScore = intent.getIntExtra(AppConstants.BUNDLE_KEY_SCORE, 0); mWrongAns = intent.getIntExtra(AppConstants.BUNDLE_KEY_WRONG_ANS, 0); mQuestionsCount = intent.getIntExtra(AppConstants.QUESTIONS_IN_TEST, 0); mCategoryId = intent.getStringExtra(AppConstants.BUNDLE_KEY_INDEX); mResultList = intent.getParcelableArrayListExtra(AppConstants.BUNDLE_KEY_ITEM); } } private void initView() { setContentView(R.layout.activity_score_card); mRecyclerResult = (RecyclerView) findViewById(R.id.rvContentScore); mRecyclerResult.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false)); mBtnShare = (Button) findViewById(R.id.btn_share); mBtnPlayAgain = (Button) findViewById(R.id.btn_play_again); mScoreTextView = (TextView) findViewById(R.id.txt_score); mWrongAnsTextView = (TextView) findViewById(R.id.txt_wrong); mSkipTextView = (TextView) findViewById(R.id.txt_skip); mGreetingTextView = (TextView) findViewById(R.id.greeting_text); initToolbar(true); setToolbarTitle(getResources().getString(R.string.score_card)); enableUpButton(); } public void initFunctionality() { mSkip = mQuestionsCount - (mScore + mWrongAns); mScoreTextView.setText(String.valueOf(mScore)); mWrongAnsTextView.setText(String.valueOf(mWrongAns)); mSkipTextView.setText(String.valueOf(mSkip)); float actualScore = ((float) mScore / (float) (mScore + mWrongAns + mSkip)) * AppConstants.MULTIPLIER_GRADE; switch (Math.round(actualScore)) { case 10: case 9: case 8: mGreetingTextView.setText(Html.fromHtml(getResources().getString(R.string.greeting_text3))); break; case 7: case 6: case 5: mGreetingTextView.setText(Html.fromHtml(getResources().getString(R.string.greeting_text2))); break; default: mGreetingTextView.setText(Html.fromHtml(getResources().getString(R.string.greeting_text1))); break; } showPieChart(); mAdapter = new ResultAdapter(mContext, mActivity, mResultList); mRecyclerResult.setAdapter(mAdapter); // show full-screen ads // TODO AdsUtilities.getInstance(mContext).showFullScreenAd(); // show banner ads // TODO AdsUtilities.getInstance(mContext).showBannerAd((AdView) findViewById(R.id.adsView)); } public void initListener() { mBtnShare.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Intent sendIntent = new Intent(); sendIntent.setAction(Intent.ACTION_SEND); sendIntent.putExtra(Intent.EXTRA_TEXT, getString(R.string.sharing_text, mScore) + " https://play.google.com/store/apps/details?id=" + mActivity.getPackageName()); sendIntent.setType("text/plain"); startActivity(Intent.createChooser(sendIntent, getResources().getText(R.string.send_to))); } }); mBtnPlayAgain.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { ActivityUtilities.getInstance().invokeCommonQuizActivity(mActivity, QuizPromptActivity.class, mCategoryId, true); } }); } public void showPieChart() { mPieChart = (PieChart) findViewById(R.id.piechart); mPieChart.setUsePercentValues(true); mPieChart.setDrawHoleEnabled(true); mPieChart.setTransparentCircleRadius(AppConstants.TRANSPARENT_CIRCLE_RADIUS); mPieChart.setHoleRadius(AppConstants.TRANSPARENT_CIRCLE_RADIUS); mPieChart.setDescription(getString(R.string.score_card)); mPieChart.animateXY(AppConstants.ANIMATION_VALUE, AppConstants.ANIMATION_VALUE); ArrayList<Entry> yvalues = new ArrayList<Entry>(); yvalues.add(new Entry(mScore, AppConstants.BUNDLE_KEY_ZERO_INDEX)); yvalues.add(new Entry(mWrongAns, AppConstants.BUNDLE_KEY_SECOND_INDEX)); yvalues.add(new Entry(mSkip, AppConstants.BUNDLE_KEY_FIRST_INDEX)); PieDataSet dataSet = new PieDataSet(yvalues, AppConstants.EMPTY_STRING); dataSet.setColors(ColorTemplate.JOYFUL_COLORS); ArrayList<String> xVals = new ArrayList<String>(); xVals.add(getString(R.string.score)); xVals.add(getString(R.string.wrong)); xVals.add(getString(R.string.skipped)); PieData data = new PieData(xVals, dataSet); // In percentage Term data.setValueFormatter(new PercentFormatter()); mPieChart.setData(data); } @Override public void onValueSelected(Entry e, int dataSetIndex, Highlight h) { if (e == null) return; } @Override public void onNothingSelected() { } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: ActivityUtilities.getInstance().invokeNewActivity(mActivity, MainActivity.class, true); return true; } return super.onOptionsItemSelected(item); } @Override public void onBackPressed() { ActivityUtilities.getInstance().invokeNewActivity(mActivity, MainActivity.class, true); }} 
  • To begin with, hover your mouse over the highlighted lines and the studio will have to show what is wrong. Further, your onValueSelected(Entry e, int dataSetIndex, Highlight h) method onValueSelected(Entry e, int dataSetIndex, Highlight h) does not rewrite the interface method because it is so void onValueSelected(Entry e, Highlight h); For this reason, your class is highlighted. - Dred

0