簡體   English   中英

如何更好地構建代碼

[英]How to better structure the code

我想知道如何在android內部創建測驗環境。 我不希望的是,每當有人回答正確時(因為有100多個問題),都要開展一項新活動。

我正在使用ga radio group的thr回答問題的文本視圖和一個轉到下一個問題的按鈕,

所以現在我的代碼看起來像這樣

   String questions[] = {"question1" , "question2".....};

  If (textview.gettext= "question1" && radioA.is selected= true) {
             RadioA.setText ("newAnswerHere");
              RadioB.setText("......)
    }

現在我知道我可以使用switch語句,但是必須有一種更簡單的方法來做到這一點? 沒有嗎

您是否嘗試過使用“問題”對象?

public class Question {

    String question;
    String[] answers;
    String correct;

    //methods

}

使用它,您可以將它們存儲在數據對象中,然后使用它們而不是固定數組

我總是推薦最簡單的模式: 提取方法

第一步

String questions[] = {"question1", "question2".....};

if (isQuestion1Selected()) {
  setNewAnswersHere()
}

private boolean isQuestionSelected() {    
    return textview.gettext().equals("question1") && radioA.isSelected == true;
}

private void setNewAnswersHere(){
    RadioA.setText("newAnswerHere");
    RadioB.setText("......);
}

但這只是第一步:)


第二步

String questions[] = {"question1", "question2".....};

if (isQuestionSelected(1)) {
  setNewAnswersHere()
}

private boolean isQuestionSelected(int number) {    
    return textview.gettext().equals("question" +  number) && radioA.isSelected == true;
}

private void setNewAnswersHere(){
    RadioA.setText("newAnswerHere");
    RadioB.setText("......);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM