2017-09-22 92 views
0

所以我有一個表單在我的應用程序中註冊一個客戶端。在這種形式下,我有一個Consent下拉,其中有YesNo。我想要做的是,如果該人選擇No,那麼他們不能完成註冊,他們必須選擇Yes讓他們繼續下一個活動。用我的代碼,無論用戶選擇什麼,它仍然會給出錯誤信息,並且不會讓它們繼續前進。Android - 創建微調錯誤消息

我用這個代碼是:

數組適配器設置:

//set up for consent spinner 
    adapter = ArrayAdapter.createFromResource(this, 
      R.array.Register_array_consent, android.R.layout.simple_spinner_item); 
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
    mspinnerPatientConsent.setAdapter(adapter); 

微調錯誤設置:

// Consent Spinner Error set up 
    Boolean no_error; 
    TextView errorText = (TextView)mspinnerPatientConsent.getSelectedView(); 
    if (mspinnerPatientConsent.getSelectedItem().toString().contains("No"));{ 
     errorText.setText("Patient Must Consent to Be Registered"); 
     errorText.setError(""); 
    } 
    if (mspinnerPatientConsent.getSelectedItem().toString().contains(" "));{ 
     errorText.setText("Patient Must Consent to Be Registered"); 
     errorText.setError(""); 
     no_error = false; 
    } 

我真的很新,所以這可能是爲什麼我看不到問題。我感謝任何有用的意見。謝謝!

回答

0

,而不是使用選擇的項目字符串使用

mspinnerPatientConsent.getSelectedItemPosition() 

這將返回所選項目的索引。

if (mspinnerPatientConsent.getSelectedItemPosition()==0);{ 
    errorText.setText("Patient Must Consent to Be Registered"); 
    errorText.setError(""); 
} 
if (mspinnerPatientConsent.getSelectedItemPosition()==1);{ 
    errorText.setText("Patient Must Consent to Be Registered"); 
    errorText.setError(""); 
    no_error = false; 
} 
+0

我是否應該在'if'語句中更改它? –

+0

這段代碼應該在if語句中,看看我編輯的答案。 – rmdan

+0

它不起作用,無論選擇什麼,仍然給了我一個錯誤 –