Java 如何在Android中比较列表中的项目?
我应该在If块中添加什么以便它可以比较这两个项目?我的意思是,当我点击法国列表项时,我想打开法国活动,当我点击它时,它工作,但当搜索另一个国家(例如美国)时,它会过滤顶部的美国和美国显示,当我点击美国时,它会打开法国活动。所以我想在if语句中这样做,它将法国列表项与列表中的第一个列表项进行比较。如果是法国,它将打开法国活动Java 如何在Android中比较列表中的项目?,java,android,arrays,Java,Android,Arrays,我应该在If块中添加什么以便它可以比较这两个项目?我的意思是,当我点击法国列表项时,我想打开法国活动,当我点击它时,它工作,但当搜索另一个国家(例如美国)时,它会过滤顶部的美国和美国显示,当我点击美国时,它会打开法国活动。所以我想在if语句中这样做,它将法国列表项与列表中的第一个列表项进行比较。如果是法国,它将打开法国活动 SearchView searchView; ListView listView; String[] list = {"France",
SearchView searchView;
ListView listView;
String[] list = {"France","United States","Spain","China","Italy","United Kingdom","Germany","Mexico","Thailand","Turkey","Austria",
"Malaysia","Hong Kong","Greece","Russia","Japan","Canada","Saudi Arabia","Poland","South Korea","Netherlands"};
ArrayAdapter<String> adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
searchView = (SearchView)findViewById(R.id.search_View);
listView = (ListView)findViewById(R.id.search_list);
adapter = new ArrayAdapter<>(this,android.R.layout.simple_list_item_1,list);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
if(What should put here?){
Intent intent = new Intent(view.getContext(),France.class);
startActivity(intent);
}
}
});
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
adapter.getFilter().filter(newText);
return false;
}
});
}
要获取ListView的项目位置,请执行以下操作:
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
String str = listView.getAdapter().getItem(i).toString();
if ( str.equals("France")) {
showToast("France clicked");
}
}
});
private void showToast(String str) {
Toast.makeText(getApplicationContext(), str, Toast.LENGTH_SHORT).show();
}
对于其他字符串,也可以使用else if