所以我正在制作这个用于在线搜索电影的学生项目Android应用程序。
我遇到的问题是即使有大量材料需要阅读,我也不太了解如何制作适用于searchview结果的适配器。我知道查询返回了什么类型的数据,但我仍然不知道如何为它创建适配器。
我只是初学者在Java和Android编程方面,但是这个项目真的让我很兴奋,而且我一直在日夜工作。如果您有任何提示(以改进我的代码),请分享它们。
public class SearchActivity extends ListActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.searchactivity);
Intent intent = getIntent();
if (Intent.ACTION_SEARCH.equals(intent.getAction())) {
String query = intent.getStringExtra(SearchManager.QUERY);
new doMySearch().execute(query);
}
}
private class doMySearch extends AsyncTask<String, Void, String>{
@Override
protected String doInBackground(String... params) {
String parameters = (params[0]);
JTomato jtomato = new JTomato("gibberish-cencored");
jtomato.setPage_limit(1);
List<Movie> movies = new ArrayList<Movie>();
String total = String.valueOf(jtomato.searchMovie(parameters, movies, 0));
return total;
}
@Override
protected void onPostExecute(String result) {
}
}
}
}
此搜索应返回的数据(如果搜索词是绿巨人)如下:[The Incredible Hulk,Hulk,HULK VS.,Hulkamania Forever,Hulk Hogan的历史冠军,Hulk Hogan - The Missing Matches]和与搜索词一样多的东西。我正在使用Java客户端来处理烂番茄API,它为我做了大部分编码(http请求和json对象解析)。
答案 0 :(得分:0)
您应该使用课程ArrayAdapter。
您可以将收到的字符串转换为字符串数组,然后使用字符串列表创建ArrayAdapter
。如果将该适配器设置为活动的列表适配器,它将在活动中显示电影的名称。