adroid 中Fragment调用数据库
时间: 2024-05-12 22:17:06 浏览: 13
可以通过以下步骤实现:
1. 创建一个继承自 Fragment 的类,用于展示数据库中的数据。
2. 声明一个 SQLiteDatabase 类型的成员变量,用于操作数据库。
3. 在 onCreateView 方法中,实例化 SQLiteDatabase 类型的变量,并使用它执行查询操作,将查询结果展示在布局中。
以下是示例代码:
```
public class MyFragment extends Fragment {
private SQLiteDatabase sqLiteDatabase;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.my_fragment, container, false);
// 获取 SQLiteDatabase 实例
sqLiteDatabase = SQLiteDatabase.openOrCreateDatabase(
getActivity().getFilesDir().getPath() + "/my.db3", null);
// 查询数据
Cursor cursor = sqLiteDatabase.rawQuery("select * from my_table", null);
// 将查询结果展示到 TextView 中
TextView textView = view.findViewById(R.id.my_text_view);
while (cursor.moveToNext()) {
String result = String.format(
"ID: %s, Name: %s, Age: %s",
cursor.getString(0),
cursor.getString(1),
cursor.getString(2));
textView.append(result);
}
return view;
}
@Override
public void onDestroyView() {
super.onDestroyView();
// 关闭数据库连接
sqLiteDatabase.close();
}
}
```
注意:一定要在 onDestroyView 方法中关闭数据库连接,否则会出现内存泄漏问题。