2016-05-16 141 views
2

我正在使用自動完成功能從Google API獲取地點。它的工作很好。它提取所有的地方下降,但事情是,如果我點擊該項目,onItemClick偵聽器不工作的自動完成。自動完成onItemClickListener事件不觸發?

這是代碼

ArrayList<String> values=new ArrayList<String>(); 
      for(int i=0;i<result.size();i++) 
      { 
       values.add(result.get(i).get("description")); 
      } 


      PlacesAdapter placesAdapter=new PlacesAdapter(getActivity(),values); 
      // Setting the adapter 
      tempAutoCompleteTextView.setDropDownVerticalOffset(20); 
      tempAutoCompleteTextView.setAdapter(placesAdapter); 
      tempAutoCompleteTextView.setOnItemClickListener(new OnItemClickListener() { 
       @Override 
       public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
        Toast.makeText(getActivity(), "place"+postion, Toast.LENGTH_SHORT).show(); 
        tempAutoCompleteTextView.setText(result.get(position).get("description")); 
       } 
      }); 

此代碼是PlacesAdapter

public class PlacesAdapter extends ArrayAdapter { 

private ArrayList<String> list; 
private Activity mContext; 
public PlacesAdapter(Activity context,ArrayList<String> list) { 
    super(context,list.size(),list); 
    this.list = list; 
    mContext = context; 
} 
+0

您正在使用自定義視圖嗎? – Bharatesh

回答

1

你必須使用itemSelectedListener,而不是用於這一目的的構造。

tempAutoCompleteTextView.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
      @Override 
      public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) { 

      } 

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


      } 
     }); 
+0

我也試過這個。不工作:( –

+0

請調試並檢查它是否被調用,如果沒有,那麼也檢查與onItemClick監聽器相同的程序。@ramyabr – KDeogharkar

+0

我檢查兩個都不工作 –

相關問題