ANDROID:带有ListViews的SQLite

时间:2012-06-25 13:56:02

标签: android sqlite listview

- 这是我到目前为止输入的布局 -

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical" >

    <EditText
        android:id="@+id/etClassName"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:layout_marginTop="10dp"
        android:layout_marginBottom="10dp"
        android:hint="@string/className"/>


    <EditText
        android:id="@+id/etAssignmentName"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="10dp"
        android:ems="10" 
        android:hint="@string/assignmentName"/>

    <EditText
        android:id="@+id/etDueDate"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:layout_marginBottom="20dp"
        android:hint="@string/dueDate" />


    <EditText
        android:id="@+id/etNotes"
        android:layout_width="match_parent"
        android:layout_height="194dp"
        android:ems="10"
        android:inputType="textMultiLine"
        android:layout_marginBottom="5dp" 
        android:hint="@string/notes"/>


    <LinearLayout
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        android:orientation="horizontal">
        <Button
            android:id="@+id/bAddAssignments"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@string/addAssignment"
            android:layout_weight="1" />

        <Button
            android:id="@+id/bViewAssignments"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@string/viewAssignments" 
            android:layout_weight="1"/>
    </LinearLayout>
</LinearLayout>

- 点击添加按钮即可进入此页面,该页面应列出您可以单击以查看作业的作业名称 -

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <ListView
        android:id="@+id/list"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="0.63" >
    </ListView>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <Button
            android:id="@+id/bNewAssignment"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="@string/newAssignment" />

        <Button
            android:id="@+id/bdeleteAssignment"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="@string/deleteAssignment" />
    </LinearLayout>

</LinearLayout>

我的问题是,当我的第一个布局跟踪数据时,我不知道如何填充第二个布局。第二个布局如何知道用户输入的内容等以填充列表视图

我目前有一个dbadapter类(里面有辅助类),一个入口类(创建入口对象)和一个赋值类(应该显示列表视图)

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

在Intent包中传递您需要的数据。

设置意图时,将下一课所需的数据作为额外内容(在此处假设字符串,但可以是其他形式):

Intent myIntent = new Intent(YourActivity.this, NewActivity.class);
myIntent.putExtra("Data1", data1var);
myIntent.putExtra("Data2", data2var);
YourActivity.this.startActivity(myIntent);

在新课程中:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    Bundle extras = getIntent().getExtras();
    if (extras != null) {
        String value1 = extras.getString("Data1");
        String value2 = extras.getString("Data2");
    }
    //use your passed strings
}      

答案 1 :(得分:0)

您对问题的描述相当模糊。我可以推荐给tutorials Lars Vogella之一,了解如何将SQLLite与ListView一起使用。他们解释一切美好而简单。我相信你会在那里找到答案!

<强>更新

InputActivity中Add-button的onClickListener:

  • 将您的用户输入添加到数据库(使用DatabaseHelper)
  • 列表项开始您的第二项活动,包括ListView

ListActivity的onCreate:

  • 创建例如数组
  • 让您的DatabaseHelper用数据库中所需的记录填充数组
  • 创建一个适配器,为您提供填充数组