好的,我不太擅长解释这个,因为我是Android的新手,所以和我一起工作。 我已经尝试了所有我能找到的东西,我不知道如何让一切都在一起工作。 我有一个Spinner来选择一个年龄组,一个Radio组,带有单选按钮,允许你选择性别(男性或女性),我有一个EditText,我将允许数字输入和Textview到当前空白的一面
根据从微调器中选择的年龄组以及选择了哪个单选按钮 - 根据在EditText框中输入的数字,将TextView的setText设置为某个数字。
我已经尝试为微调器使用OnItemSelectedListener但是却无法找到它如何知道从数组中选择的内容。我尝试使用带有数组中项目的if语句的getItemSelected
单选按钮 香港专业教育学院尝试使用if语句 - 如果(radiobutton.isChecked())但我不知道我是否 在此之前需要一个ifCheckedRadio以及如何在微调器之后使其工作
如果所有这些都奏效了我的话 if(EditText.getText()。equals(“#”)) TextView.setText( “#”);
将为每个可能的#input
复制现在文本会在没有按钮和OnClickListener的情况下改变,或者有没有办法在没有按钮的情况下执行此操作,因为将使用按钮在最后添加多个EditText,但我希望此后立即显示输入
对不起,如果不清楚,请告知我们您是否需要更多信息。如果我忽略了之前使用微调器和无线电按钮的问题,请告诉我,我会一直看,但我一直坚持这个。
答案 0 :(得分:0)
这应该这样做
public void onItemSelected(AdapterView<?> parent,
View view, int pos, long id) {
TextView tv = (TextView) findViewById(R.id.TextView01);
RadioGroup rg = (RadioGroup) findViewById(R.id.RadioGroup01);
EditText et = (EditText) findViewById(R.id.EditText01);
RadioButton rb1 = (RadioButton) findViewById(R.id.RadioButton01);
RadioButton rb2 = (RadioButton) findViewById(R.id.RadioButton02);
String gender = "";
if (rb1.isChecked())
gender = "male";
if (rb2.isChecked())
gender = "female";
String answer;
answer = parent.getItemAtPosition(pos).toString() + " "
+ gender + " " + et.getText();
tv.setText(answer);
}
答案 1 :(得分:0)
确定 - 重新上一次评论,这使得从微调器和单选按钮中选择一个项目,终止输入操作。基本上我已经在按钮上添加了onClickListeners。你不能真正在编辑文本中添加Onclick,因为点击通常会弹出软键盘。
package com.test.spinnerexample;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.AdapterView.OnItemSelectedListener;
public class SpinnerExample extends Activity {
RadioButton rb1; RadioButton rb2; TextView tv; EditText et;
Spinner sp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
rb1 = (RadioButton) findViewById(R.id.RadioButton01);
rb2 = (RadioButton) findViewById(R.id.RadioButton02);
tv = (TextView) findViewById(R.id.OutputText);
et = (EditText) findViewById(R.id.EditText01);
sp = (Spinner) findViewById(R.id.Spinner01);
ArrayAdapter<CharSequence> adapter1;
adapter1 = ArrayAdapter.createFromResource(
this, R.array.agegroups_array,
android.R.layout.simple_spinner_item);
adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
sp.setAdapter(adapter1);
rb1.setChecked(true);
sp.setOnItemSelectedListener(new MyOnItemSelectedListener());
rb1.setOnClickListener(new ButtonListener());
rb2.setOnClickListener(new ButtonListener());
}
private class MyOnItemSelectedListener implements OnItemSelectedListener {
public void onItemSelected(AdapterView<?> parent, View view, int pos,
long id) {
RadioButton checkedButton = rb1.isChecked() ? rb1 : rb2;
showResult(parent.getItemAtPosition(pos).toString(),
checkedButton.getText().toString());
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
}
}
private class ButtonListener implements OnClickListener{
@Override
public void onClick(View view) {
RadioButton rb = (RadioButton) view;
int selectedItem = sp.getSelectedItemPosition();
showResult(sp.getItemAtPosition(selectedItem).toString(),
rb.getText().toString());
}
}
private void showResult(String selctdSpnrText, String chkdBtnText){
String answer = selctdSpnrText + " " + chkdBtnText + " "
+ et.getText();
tv.setText(answer);
}
}
答案 2 :(得分:0)
// ------- spinner for gender
ArrayAdapter<String> spnAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, items);
spnAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spnSex.setAdapter(spnAdapter);
spnSex.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
// TODO Auto-generated method stub
myprofile.str_sex = items[position];
}
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});