简体   繁体   English

尝试从SQLite数据库填充ListView

[英]Trying to populate listview from sqlite database

I'm trying to populate a list view with data from my database: 我正在尝试使用数据库中的数据填充列表视图:

protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_visualizar);
        EventoSQLHelper e = new EventoSQLHelper(this);
        e.Open();
        Cursor c = e.getRegistros();
        String resp = "";

        List<String> list = new ArrayList<String>();

        ListView eventos = (ListView) findViewById(R.id.list_eventos);
        TextView tx = new TextView(this);
        for (c.moveToFirst(); !c.isAfterLast(); c.moveToNext()) {
            resp = c.getString(c.getColumnIndex("id"))
                    + c.getString(c.getColumnIndex("descricao"))
                    + c.getString(c.getColumnIndex("dataEvento"));
            list.add(resp);
        }
        ArrayAdapter<String> adpt = new ArrayAdapter<String>(this,android.R.layout.activity_list_item,list);
        eventos.setAdapter(adpt);
        e.close();
    }

But it gave me an error: 但这给了我一个错误:

09-20 14:35:19.300: E/AndroidRuntime(29881): FATAL EXCEPTION: main
09-20 14:35:19.300: E/AndroidRuntime(29881): Process: com.example.pacixmobile, PID: 29881
09-20 14:35:19.300: E/AndroidRuntime(29881): java.lang.IllegalStateException: ArrayAdapter requires the resource ID to be a TextView
09-20 14:35:19.300: E/AndroidRuntime(29881):    at android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java:386)
09-20 14:35:19.300: E/AndroidRuntime(29881):    at android.widget.ArrayAdapter.getView(ArrayAdapter.java:362)
09-20 14:35:19.300: E/AndroidRuntime(29881):    at android.widget.AbsListView.obtainView(AbsListView.java:2715)
09-20 14:35:19.300: E/AndroidRuntime(29881):    at android.widget.ListView.measureHeightOfChildren(ListView.java:1274)
09-20 14:35:19.300: E/AndroidRuntime(29881):    at android.widget.ListView.onMeasure(ListView.java:1186)
09-20 14:35:19.300: E/AndroidRuntime(29881):    at android.view.View.measure(View.java:17387)
09-20 14:35:19.300: E/AndroidRuntime(29881):    at android.widget.RelativeLayout.measureChild(RelativeLayout.java:689)

I want to list the data and later i want to click on any item, and send a sms to a list of contacts. 我想列出数据,以后再单击任何项​​目,然后向联系人列表发送短信。 But i can't even list the data...what am i doing wrong? 但是我什至无法列出数据...我在做什么错?

java.lang.IllegalStateException: ArrayAdapter requires the resource ID to be a TextView

ArrayAdapter expects a resource that is just a TextView. ArrayAdapter需要的资源仅仅是TextView。 android.R.layout.activity_list_item is a LinearLayout holding an ImageView and a TextView. android.R.layout.activity_list_item是一个持有ImageView和TextView的LinearLayout。 Use android.R.layout.simple_list_item_1 instead. 请改用android.R.layout.simple_list_item_1

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM