2014-11-27 5 views
0

Я бы хотел, чтобы мой счетчик показывал другой текст для разных выборов, выбранных на моем счетчике в Android Studio. Его применение взаимодействий с лекарственными средствами, поэтому, когда пользователь выбирает лекарство из спиннера, мне хотелось бы, чтобы для каждого появилось другое взаимодействие. Любые предложения были бы полезны.Android другой выбор spinner show different 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 

    } 
+0

Вы хотите обновить свой список или создать всплывающее подменю для каждого препарата? – Machado

+0

не подменю действительно. У моего счетчика есть выпадающий список из 6 препаратов, и я хочу, чтобы текстовое изображение менялось каждый раз, когда кто-то выбирает другой препарат из раскрывающегося списка, так как есть разные взаимодействия для каждого препарата. – coder123

ответ

1

Я считаю, что этот подход можно искали:

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;

+0

спасибо !! это сработало – coder123

+0

Добро пожаловать, сэр. Тогда примите в качестве ответа. – Machado

0

Вы можете установить слушателя на блесны:

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 
} 

основе положение, которое передается этому методу, вы можете изменить видимость ваших текстовых просмотров, чтобы они исчезли или были видимыми.

+0

Вы можете использовать textView.setText («») вместо setVisibility – Machado

+0

Я отправил свой код выше в ответ, как вы думаете, я все еще могу использовать этот код? – coder123

-1

Это мой код, если это помогает. Могу ли я использовать этот код?

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 

} 
+0

Я отправил свой код ниже в ответ, как вы думаете, я все еще могу использовать этот код? – coder123

+1

Измените свой вопрос, разместив его как ответ. – Chitrang

0

Проверьте название лекарственного средства и на основе названия наркотиков набор

adapter_state.setDropDownViewResource(R.layout.custom_text_view) 

здесь R.layout.custom_text_view - это XML, который будет производиться как в том, как u wil Мне нравится

Смежные вопросы