![](/img/trans.png)
[英]How to display different textview when Spinner option is selected in Android
[英]Android different selection spinner show different textview
我希望微调器针对Android Studio中的微调器显示的不同选择显示不同的textview。 它是一种药物交互作用应用程序,因此,当用户从微调器中选择一种药物时,我希望每种药物都会出现不同的相互作用。 任何建议将是有用的。
下面是我的代码,
public class MyActivity extends Activity implements OnItemSelectedListener {
Spinner spinner;
TextView showmed;
private String[] state = {"Adalimumab",
"Etanercept",
"Tacrolimus",
"Mycophenolic Acid",
"Bicalutamide",
"Darbepoetin alfa",
"Ciclosporin",
"Interferon beta-1a",
"Triptorelin"};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
System.out.println(state.length);
showmed = (TextView) findViewById(R.id.showgender);
spinner = (Spinner) findViewById(R.id.spinner);
ArrayAdapter<String> adapter_state = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, state);
adapter_state
.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter_state);
spinner.setOnItemSelectedListener(this);
}
public void onItemSelected(AdapterView<?> parent, View view, int position,
long id) {
spinner.setSelection(position);
String selState = (String) spinner.getSelectedItem();
showmed.setText("Your drug:" + selState);
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
我相信这是您可能一直在寻找的方法:
public void onItemSelected(AdapterView<?> parent, View view, int position,
long id) {
switch(position)
{
case 0:
showmed.setText("Your drug number 0 on the list");
break;
case 1:
showmed.setText("Your drug number 1 on the list");
break;
}
}
您还应该更新为final TextView showmed;
您可以在微调器上设置侦听器:
spinner.setOnItemSelectedListener(this);
实现的方法将如下所示:
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id)
{
if(position == 0)
textView.setVisibility(View.VISIBLE);
//do something similar for every position
}
根据传递给该方法的位置,您可以将文本视图的可见性更改为“消失”或“可见”。
检查药物名称并根据药物名称设置
adapter_state.setDropDownViewResource(R.layout.custom_text_view)
这里R.layout.custom_text_view是您将制作的XML,就像您想要的那样
如果有帮助,这是我的代码。 我还能使用此代码吗?
public class MyActivity extends Activity implements OnItemSelectedListener {
Spinner spinner;
TextView showmed;
private String[] state = {"Adalimumab",
"Etanercept",
"Tacrolimus",
"Mycophenolic Acid",
"Bicalutamide",
"Darbepoetin alfa",
"Ciclosporin",
"Interferon beta-1a",
"Triptorelin"};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
System.out.println(state.length);
showmed = (TextView) findViewById(R.id.showgender);
spinner = (Spinner) findViewById(R.id.spinner);
ArrayAdapter<String> adapter_state = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, state);
adapter_state
.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter_state);
spinner.setOnItemSelectedListener(this);
}
public void onItemSelected(AdapterView<?> parent, View view, int position,
long id) {
spinner.setSelection(position);
String selState = (String) spinner.getSelectedItem();
showmed.setText("Your drug:" + selState);
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.