如何使搜索结果可点击

时间:2015-03-04 16:31:16

标签: java android sql android-studio click

我创建了一个数据库应用程序,用户可以在其中搜索电影。然后,应用程序将在ScrollView中返回此搜索的结果。然后,我希望这些搜索结果可以点击,这将导致另一页显示所选电影的完整详细信息。做这个的最好方式是什么?

public void search(View v){
    EditText search = (EditText)findViewById(R.id.edtSearch);
    String searchresult = "%" + search.getText().toString() + "%";
    db = new DbHelper(this).getReadableDatabase();
    String[] tblColumns = {"*"};
    String where = "film LIKE ? OR actor LIKE ? OR actor2 LIKE ? OR director LIKE ?";
    String[] args = {searchresult, searchresult, searchresult, searchresult};
    Cursor results = db.query("FILMTABLE", tblColumns, where, args, null, null, null);
    film(results);
}

public void film (Cursor c){

    c.moveToFirst();
    int titleIndex = c.getColumnIndex("film");
    int idIndex = c.getColumnIndex("id");
    String title = c.getString(titleIndex);
    int filmID = c.getInt(idIndex);

    TextView txt = new TextView(getApplicationContext());
    txt.setId(filmID);
    txt.setText(title);
    txt.setTextColor(Color.BLACK);
    txt.setTextSize(15);

    ScrollView scrollView = (ScrollView)findViewById(R.id.scrolLView);
    scrollView.addView(txt);

}

2 个答案:

答案 0 :(得分:1)

在arraylist中过滤搜索结果,并使用listview显示结果。然后实现listview.setOnItemClickListner。

请遵循:http://www.javacodegeeks.com/2013/06/android-listview-tutorial-and-basic-example.html

答案 1 :(得分:0)

Android中的每个小部件都是可点击的对象。您可以根据需要格式化结果,可能在ListView中,并将每个onClick属性设置为单击时需要执行的Java中的任何函数。如果它们都运行相同,您可以在整个列表中放置一个单击侦听器。如果它们打算以不同的方式运行(更可能的情况),您可以使用上面的方法为列表中的每个元素单独分配方法。