0
我有一個EditText框用作搜索框和一些項目的列表。 當我在搜索時創建一個新列表時,我已經實現將原始列表的數組複製到向量中。 現在我想使用OnItemClickListener來訪問該項目的細節(就像我們在搜索聯繫人時一樣)。 以下是我的代碼:如何將搜索結果複製到矢量中?
ListView slist;
private ArrayAdapter<String> arrayAdapter;
int flag=0;
Vector<String> searchResults =new Vector<String>();
String [] SR;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_route);
// Load all data
slist=(ListView)findViewById(R.id.listView1);
arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, Data.supplier_names);
slist.setAdapter(arrayAdapter);
slist.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// TODO Auto-generated method stub
Log.d("Clicked Item",slist.getItemAtPosition(arg2).toString());
}
});
// Get the intent, verify the action and get the query
Intent intent = getIntent();
if (Intent.ACTION_SEARCH.equals(intent.getAction()))
{
String query = intent.getStringExtra(SearchManager.QUERY);
Log.d("Search Query - ",query);
// ### searching valid supplier list
for(int i=0;i<Data.supplier_names.length;i++)
{
if(Data.supplier_names[i].toUpperCase().contains(query.toUpperCase()))
{
Log.d("search result - ", Data.supplier_names[i]);
searchResults.add(Data.supplier_names[i]);
}
}
Log.d("Vector Size - ",searchResults.size() + " ");
// ### creating string array
SR=new String[searchResults.size()];
for(int i=0;i<searchResults.size();i++)
{
SR[i]=searchResults.get(i).toString();
Log.d("String array - ", SR[i]);
}
if(SR.length!=0)
{
arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,SR);
slist.setAdapter(arrayAdapter);
}
}
}
請協助我進行查詢。