0
我想做一個簡單的表單活動,以瞭解如何使用Eclipse提供的各種組件。直到我到達單選按鈕時,我都做得很好。獲取單選按鈕值Android
該應用程序允許用戶填寫整個表格,然後單擊發送按鈕。當單擊發送按鈕時,我創建一個新的意圖,將所有表單數據傳入意圖,並啓動一個新的活動,以充當一種確認/摘要頁面。
我該如何去檢索用戶點擊了哪個單選按鈕?我總共有五個。 下面是我的onCreate方法的代碼。
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.feedback_scroll);
//References to XML
name = (EditText)findViewById(R.id.nameEntryBox);
county = (Spinner)findViewById(R.id.countySpinner);
//Set array adapter
county.setAdapter(fillCountySpinner());
submitBtn = (Button)findViewById(R.id.submitFormBtn);
atmo1 = (RadioButton)findViewById(R.id.arad1);
atmo2 = (RadioButton)findViewById(R.id.arad2);
atmo3 = (RadioButton)findViewById(R.id.arad3);
atmo4 = (RadioButton)findViewById(R.id.arad4);
atmo5 = (RadioButton)findViewById(R.id.arad5);
ser1 = (RadioButton)findViewById(R.id.srad1);
ser2 = (RadioButton)findViewById(R.id.srad2);
ser3 = (RadioButton)findViewById(R.id.srad3);
ser4 = (RadioButton)findViewById(R.id.srad4);
ser5 = (RadioButton)findViewById(R.id.srad5);
rating = (RatingBar)findViewById(R.id.ratingBar1);
//Add a listener to the submit button - Anonymous inner class
submitBtn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// Create a new Intent
Intent i = new Intent(v.getContext(), FeedbackResults.class);
choice = (String)county.getSelectedItem();
//Add extra parameters
//Name
i.putExtra("name", name.getText());
//County
i.putExtra("county", choice);
//Dob
//Atmosphere
i.putExtra("atmosphere", atmos);
//Service
i.putExtra("service", serv);
//Rating
i.putExtra("rating", rating.getRating());
//Start new Activity that will display a review of the customers feedback
startActivity(i);
//Toast message
Toast.makeText(v.getContext(), "Thank you for your feedback!", Toast.LENGTH_SHORT).show();
}
});
}
我在看這個網站上關於我的問題的另一個話題。他們說要使用switch語句。我理解它的邏輯,並寫在方法來做到這一點,但我不知道如何將視圖變量傳遞給它..什麼是這個視圖變量與?這是我寫的方法。
public void onRadioButtonClicked1(View v){
switch(v.getId()){
case R.id.arad1:
atmos = "1";
break;
case R.id.arad2:
atmos = "2";
break;
case R.id.arad3:
atmos = "3";
break;
case R.id.arad4:
atmos = "4";
break;
case R.id.arad5:
atmos = "5";
break;
}
}
任何反饋非常感謝!
我其實並沒有把我的單選按鈕放在一個組裏!但是這樣做很有意義!我會嘗試你現在的建議。 – Javacadabra
謝謝,這工作。 – Javacadabra