2012-12-17 16 views
5

मेरे पास 2 स्पिनर हैं।एक गतिविधि में दो स्पिनर

इस

मेरी गतिविधि

package com.example.belajarcombobox; 

import android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.AdapterView; 
import android.widget.ArrayAdapter; 
import android.widget.Spinner; 
import android.widget.TextView; 
import android.widget.Toast; 


public class CreateComboBox extends Activity implements AdapterView.OnItemSelectedListener { 

    TextView selection; 
    TextView selection2; 
    String[] countries = {"Amerika","Argentina","Brazil"}; 

    String[] city = {"London","Paris","Buenos Aires"}; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     selection = (TextView) findViewById(R.id.selection); 
     Spinner spin = (Spinner) findViewById(R.id.spinner); 
     ArrayAdapter<String> aa = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, countries); 
     aa.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
     spin.setAdapter(aa); 
     spin.setOnItemSelectedListener(this); 

     selection2 = (TextView) findViewById(R.id.selection2); 
     Spinner spin2 = (Spinner) findViewById(R.id.spinner2); 
     ArrayAdapter<String> bb = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, city); 
     bb.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
     spin.setAdapter(bb); 
     spin2.setOnItemSelectedListener(this); 
    } 

    public void onItemSelected(AdapterView<?> parent, View v, int position, long id){ 
     Spinner spin = (Spinner)parent; 
     Spinner spin2 = (Spinner)parent; 
     if(spin.getId() == R.id.spinner) 
     { 
      Toast.makeText(this, "Your choose :" + countries[position],Toast.LENGTH_SHORT).show();     
     } 
     if(spin2.getId() == R.id.spinner2) 
     { 
      Toast.makeText(this, "Your choose :" + city[position],Toast.LENGTH_SHORT).show();  
     } 

    } 

    public void onNothingSelected(AdapterView<?> parent){ 
     Toast.makeText(this, "Choose Countries :", Toast.LENGTH_SHORT).show(); 
    } 
} 

है जब मैं इस गतिविधि चलाने के लिए, पहले स्पिनर मूल्य शहर है और दूसरा स्पिनर मान रिक्त है।

मैं एक ही गतिविधि में 2 स्पिनर कैसे चला सकता हूं? पहला स्पिनर मूल्य देश है और दूसरा स्पिनर मूल्य शहर है। बीआर

एलेक्स

उत्तर

3

उपयोग

spin2.setAdapter(bb); 

spin.setAdapter(bb); 

के बजाय

वर्तमान में आप दूसरे स्पिनर

+1

धन्यवाद में से एक संभाल बनाएं न करें। मैं दूसरे स्पिन एडाप्टर –

+0

@Alexbelek में स्पिन को बदलना भूल गया: सबसे स्वागत दोस्त :) –

+0

मेरे पास एक प्रश्न फिर से है। मेरे पास एक फॉर्म इनपुट पेज है। उदाहरण SaveActivity.java। इस गतिविधि में, मेरे पास एक संपादन टेक्स्ट है, बटन। SaveActivity.java पर इस CreateComboBox को आयात करने के लिए कैसे करें। तो, मेरे पास SaveActivity.java में स्पिनर है? @ ρяσѕρєя K –

0

आप थानेदार के लिए एडाप्टर सेट कर रहे हैं uld उपयोग spin.setAdapter (बीबी) बनाते हैं; spin2.setAdapter (बीबी) के लिए;

1
bb.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
spin2.setAdapter(bb); (should be second spinner..) 
^^^^^ 
spin2.setOnItemSelectedListener(this); 
1

अपनी गतिविधि वर्ग के लिए कार्यान्वयन जोड़ने

दो इनर क्लासों कि प्रत्येक स्पिनरों

public class CreateComboBox extends Activity implements AdapterView.OnItemSelectedListener 
{ 
    TextView selection; 
    TextView selection2; 
    String[] countries = {"Amerika","Argentina","Brazil"}; 

    String[] city = {"London","Paris","Buenos Aires"}; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     selection = (TextView) findViewById(R.id.selection); 
     Spinner spin = (Spinner) findViewById(R.id.spinner); 
     ArrayAdapter<String> aa = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, countries); 
     aa.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
     spin.setAdapter(aa); 
     spin.setOnItemSelectedListener(new CountriesSpinnerClass()); 

     selection2 = (TextView) findViewById(R.id.selection2); 
     Spinner spin2 = (Spinner) findViewById(R.id.spinner2); 
     ArrayAdapter<String> bb = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, city); 
     bb.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
     spin.setAdapter(bb); 
     spin2.setOnItemSelectedListener(new CitiesSpinnerClass()); 
    } 

    class CountriesSpinnerClass implements AdapterView.OnItemSelectedListener 
    { 
     void onItemSelected(AdapterView<?> parent, View v, int position, long id) 
     { 
      Toast.makeText(v.getContext(), "Your choose :" + countries[position],Toast.LENGTH_SHORT).show();  
     } 
    } 

    class CitiesSpinnerClass implements AdapterView.OnItemSelectedListener 
    { 
     void onItemSelected(AdapterView<?> parent, View v, int position, long id) 
     { 
      Toast.makeText(v.getContext(), "Your choose :" + city[position],Toast.LENGTH_SHORT).show();   
     } 
    } 
} 
+0

इस उत्तर ने मेरी मदद की। मेरे पास दो अलग-अलग मूल्यों के साथ दो अलग-अलग स्पिनर हैं। मैं दोनों स्पिनरों के लिए केवल एक मूल्य दिखाऊंगा। लेकिन अब हल हो गया। धन्यवाद। –

संबंधित मुद्दे