2014-05-14 57 views
0

我創建了數組。一個是美國所有狀態(Full Form),另一個是美國所有狀態的簡稱。我已經展示了狀態(Full form )在一個spinner.Now我要做的是顯示狀態的簡短形式,根據用戶在微調選擇。我可以如何實現它。根據其他數組顯示一個數組值

+1

發佈您的代碼你已經嘗試了什麼。 –

+0

獲取微調選定項目的索引,並使用此索引從其他數組中獲取值... –

+0

如何做到@Haresh請問你能解釋一下嗎? – anuj

回答

1

您應該使用映射,即在元素應映射的數組中。讓我舉一個例子。

String[] fullForm = { Alabama, California, Florida, Illinois}; 
    String[] shortForm = {AL, CA, FL, IL}; 

    ArrayAdapter<String> ad = new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_spinner_dropdown_item,fullForm); 

spinner.setAdapter(ad); 

spinner.setOnItemSelectedListener(new OnItemSelectedListener() { 

      @Override 
      public void onItemSelected(AdapterView<?> arg0, View arg1, 
        int position, long arg3) { 
       // TODO Auto-generated method stub 


       Toast.makeText(getApplicationContext(), " You selected " + fullForm[position] + "\n Short form is : " + shortForm[position], Toast.LENGTH_SHORT).show(); 
      } 

      @Override 
      public void onNothingSelected(AdapterView<?> arg0) { 
       // TODO Auto-generated method stub 

      } 
     }); 
1
// try this way,hope this will help you... 

**activity_main.xml** 

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" 
    android:gravity="center"> 

    <Spinner 
     android:id="@+id/spnState" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"/> 
</LinearLayout> 

**MainActivity.java** 

public class MainActivity extends Activity { 

    Spinner spnState; 
    protected void onCreate(Bundle paramBundle) { 
     super.onCreate(paramBundle); 
     setContentView(R.layout.activity_main); 
     spnState = (Spinner) findViewById(R.id.spnState); 
     String[] stateFullNameArray = new String[]{"statefullname1","statefullname2","statefullname3","statefullname4","statefullname5"}; 
     final String[] stateShortNameArray = new String[]{"stateshortname1","stateshortname2","stateshortname3","stateshortname4","stateshortname5"}; 

     ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,stateFullNameArray); 
     adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
     spnState.setAdapter(adapter); 

     spnState.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
      @Override 
      public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 
       Toast.makeText(MainActivity.this,stateShortNameArray[position],Toast.LENGTH_SHORT).show(); 
      } 

      @Override 
      public void onNothingSelected(AdapterView<?> parent) { 

      } 
     }); 
    } 


}