2015-01-30 2 views
1

에 대한 배열 인덱스 값을 찾는 것은 android Spinner에서 titleName을 선택할 수 있습니다. XML 클래스에서 Spinner에 데이터를로드하는 중입니다. titleName과 title ID를 전달하고 싶습니다.등록 사용자 중에 선택한 안드로이드 스피너 아이템

선택한 titleName의 배열 인덱스 값을 얻으려면 어떻게해야합니까? 사용자가 미스터을 선택한 경우 는 예 - 그럼 난 값 0

내 자바 코드

states = getResources().getStringArray(R.array.title_array); 

      titleSP = (Spinner) findViewById(R.id.registerTitle); 

      ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this, 
        android.R.layout.simple_spinner_item, states); 
      dataAdapter 
      .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
      titleSP.setAdapter(dataAdapter); 
final Button button = (Button) findViewById(R.id.btnRegister); 
     button.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View v) { 
       try { 

        String TitleName = titleSP.getSelectedItem().toString(); 

MY title.xml

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <string name="title_prompt">Choose the title</string> 
    <string-array name="title_array"> 
     <item>Mr</item> 
     <item>Mrs</item> 
     <item>Miss</item> 
     <item>Dr</item> 
     <item>Rev</item> 
     <item>Ms</item> 
    </string-array> 
</resources> 
+0

청취자에게 주어진다. – njzk2

+0

@ njzk2 코드를 사용하는 방법을 보여줄 수 있습니까 –

+0

회 전자 항목이 선택되었을 때 호출되는 수신기가 있다고 가정합니까? – njzk2

답변

0

그것에게 당신의 어댑터에서 position 매개 변수를 전달하고 싶다. OnItemClickListener을 구현하여 검색 할 수 있습니다. onItemClick 의 세 번째 매개 변수는

0

찾고있는 값 위치 변수는 당신의 위치에 직접 일치시킬 수 있습니다 스피너에서 항목의 위치를 ​​제공하는 스피너 OnItemClickListener

spinner.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
      @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
       String[] titles = getResources().getStringArray(R.id.title_array); 
       String selectedTitle = titles[position]; 
      } 
     }); 

를 사용하다 데이터 소스의 제목

편집 : 스피너의 기본 제공 방법을 사용하여 현재 선택된 항목 위치를 가져올 수 있습니다. 따라서 첫 번째 항목을 선택하면 선택한 항목 위치 0이 표시됩니다.이 항목은 데이터 소스 (선택한 항목 위치 0)를 기반으로하므로 R.id.title_array의 인덱스 위치 0과 같으며 "Mr" .

titleSP.getSelectedItemPosition(); 
+0

제 편집을 확인하십시오. 그것이 정확하고 원하는 것을 원한다면, 올바른 것과 upvote로 표시하십시오. –

+0

거기에 button.setOnClickListener (새 View.OnClickListener() {b의 UR 생각이 맞다지만 이건 내가 원했던 것이 아닙니다. 고마워. –

관련 문제