0

我正在尝试在 sqlite 数据库中使用字符串。我打算将 Multiline EditText 保存到 sqlite VARCHAR 列中有人知道怎么做吗?

每次我使用 EditText.getText().toString() 我只有一行

例如,

            <EditText
            android:id="@+id/edittext"
            android:layout_width="267dp"
            android:layout_height="73dp"
            android:inputType="textCapSentences|textMultiLine" 
            android:singleLine="false" >

当我进入

abc
123
iiiiii

edittext.getText().toString() 只返回“abc”!!!!

如何将所有文本保存到 sqlite VARCHAR 列中?

4

2 回答 2

2

您需要发布更多代码,以便我们查看发生了什么。拿这个简约的应用程序:

public class Example extends Activity implements OnClickListener {
    @Override
    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }

    public void onClick(View view) {
        //      Find the TextView,      set it's text from       the EditText
        ((TextView) findViewById(R.id.text)).setText(((EditText) findViewById(R.id.edit)).getText());
    }   
}

与此 xml 配对:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <EditText
        android:id="@+id/edit"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="" />

    <Button
        android:id="@+id/button"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="onClick" />

    <TextView
        android:id="@+id/text"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

</LinearLayout>

只需单击一个按钮,这个简单的应用程序就可以满足您读取多行 EditText 并将其内容传递给另一个对象的要求。在这种情况下,我们将字符串传递给 TextView,数据库的代码基本相同。它甚至复制了“未知单词”突出显示的颜色:

截屏

(不要指望将颜色突出显示如此轻松地复制到数据库并返回。)所以这就是为什么我要求真正选择你的代码,因为你在这个过程中改变了一些东西,我看不到错误从这里。

请使用您问题的编辑功能在您的位置发布适当的功能:阅读 EditText,将其内容存储在数据库中并稍后检索它。

于 2012-05-13T03:52:20.567 回答
0
edittext = (EditText) findViewById(R.id.multitext); 
str=edittext.getText().toString()                           
DBHelper req_task = new DBHelper(Send_req.this);
req_task.createDataBase();
req_task.openDataBase();
req_task.writetext(str);
于 2012-05-13T14:01:51.663 回答