有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java sherlocklistfragment未显示列表

嘿,我正试图用我的SQLite数据库中的数据创建一个ListView。现在我有一个名为tricks_list的布局,其中我显示了一个edittext字段和一个searchbutton。在它们下面,我有我的列表视图,我想在其中放置技巧名称。 代码运行了,但是没有显示列表,而是有一个旋转器一直旋转。 有人知道怎么了吗? 这是我的xml:

<LinearLayout
    安卓:id="@+id/ll_listview"
    安卓:layout_width="match_parent"
    安卓:layout_height="match_parent"
    安卓:layout_weight="80" >

    <ListView
        安卓:id="@安卓:id/list"
        安卓:layout_width="match_parent"
        安卓:layout_height="match_parent" >
    </ListView>
</LinearLayout>

以下是java:

public class TrickListTab extends SherlockListFragment implements
    ActionBar.TabListener {

private Fragment mFragment;
DBAdapter db = new DBAdapter(getActivity());
public ListView lv;
public SimpleCursorAdapter adapter;

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getActivity().setContentView(R.layout.tricks_list);

}

public void getTricks(View view) {
    try {

        db.open();

    } catch (SQLException e) {
        e.printStackTrace();

    }
    Cursor tricks = db.getTrick_name();
    adapter = new SimpleCursorAdapter(getActivity(),
            安卓.R.layout.simple_list_item_1, tricks,
            new String[] { "trick_name" },
            new int[] { 安卓.R.id.text1 }, 0);
    lv = (ListView) view.findViewById(安卓.R.id.list);
    lv.setAdapter(adapter);
    db.close();
}

这是光标:

public Cursor getTrick_name() {
    return db.rawQuery("SELECT trick_name FROM Tricks_list",
            null);
}

共 (1) 个答案

  1. # 1 楼答案

    在onCreate()方法中(或之后)初始化DBAdapter

    DBAdapter db;
    public ListView lv;
    public SimpleCursorAdapter adapter;
    
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        db = new DBAdapter(getActivity());
        getActivity().setContentView(R.layout.tricks_list);
    
    }