gpt4 book ai didi

java - 让Textview显示SQLite信息

转载 作者:行者123 更新时间:2023-12-02 07:01:06 24 4
gpt4 key购买 nike

好吧,我的 DataBaseHandler 中有下一个代码

    // Getting single contact
Database getContact(int id) {
SQLiteDatabase db = this.getReadableDatabase();

Cursor cursor = db.query(TABLE_MOVIES, new String[] { KEY_ID,
,KEY_SUM,KEY_ACT,KEY_TRAILER,KEY_PREVIEW,KEY_DIR,KEY_WRI }, KEY_ID + "=?",
new String[] { String.valueOf(id) }, null, null, null);
if (cursor != null)
cursor.moveToFirst();

Database contact = new Database(Integer.parseInt(cursor.getString(0)),
cursor.getString(1),cursor.getString(2),cursor.getString(3),cursor.getString(4),cursor.getString(5),
cursor.getString(6),cursor.getString(7));

return contact;
}

info.java 类

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.info);
DatabaseHandler db = new DatabaseHandler(this);
// for this example i want to read out ID 15 in my database
db.getContact(15);

}

database.java类

// getting movie_director
public String getMD(){
return this._movie_director;
}

// setting movie_director
public void setMD(String movie_director){
this._movie_director = movie_director;
}

包含textView的info.xml文件

   <?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" >

<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge" />

在本例中,我想在 SQLite 数据库的 TextView 中显示电影导演,但我在 db.getContact(15); 之后卡住了(请参阅 info.java 类)。我可以调用数据库,但我不知道如何从 DatabaseHandler 检索信息并将其放入 Textview 中。我尝试执行 db.getMD(); ,但以这种方式检索它不起作用。有什么想法吗?

最佳答案

您的 getContact() 函数返回一个 Database 对象,但您正在向 DatabaseHandler 调用方法 getMD() .

我认为首先您应该将类​​ Database 重命名为 Contact 之类的名称,然后在 getContact() 函数中返回该类。之后将返回值存储在变量中并调用函数getMD()。代码可以是这样的:

  DatabaseHandler db = new DatabaseHandler(this);
Contact contact = db.getContact(15); //This is your what you call Database object

//get View element
TextView contactTextView = (TextView) findViewById(R.id.textView2);
//Set contact information in the TextView
contactTextView.setText(contact.getMD());

关于java - 让Textview显示SQLite信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16660002/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com