我正在尝试将数据从List<ParseObject>
输入到游标。可以找到ParseObject文档here。
我发现您可以使用MatrixCursor执行此操作,请参阅有用的网站: http://developer.android.com/reference/android/database/MatrixCursor.html
How to insert extra elements into a SimpleCursorAdapter or Cursor for a Spinner?
How to create Cursor data without getting data from the DataBase in Android application?
我的问题是,当我从MyContentProvider.java返回游标时,我尝试做一个cursor.getFloat(),它返回一个String,我不能对它进行DecimalFormat。
如何使用addRow(Object [] columnValues)将多种数据类型放入MatrixCursor?
使用光标数据的方法:
public void getData() {
Cursor cursor = getContentResolver().query(URI, null, mParseId, null, null);
DecimalFormat df = new DecimalFormat();
df.setMinimumFractionDigits(2);
mTextview.setText(df.format(
cursor.getFloat(cursor.getColumnIndexOrThrow("number"))));
}
MyContentProvider.java:
@Override
public Cursor query(Uri uri, String[] projection, String selection,
String[] selectionArgs, String sortOrder) {
......
MatrixCursor mc = new MatrixCursor(new String[] { "_id", "title", "number" });
mc.addRow(new String[] { ParseObject.getString("id"), ParseObject.getString("title"), ParseObject.getString("number") });
return mc;
}
我想在MyContentProvider.java中做什么:
@Override
public Cursor query(Uri uri, String[] projection, String selection,
String[] selectionArgs, String sortOrder) {
......
MatrixCursor mc = new MatrixCursor(new String[] { "_id", "title", "number" });
mc.addRow(new String[] { ParseObject.getLong("id"), ParseObject.getString("title"), ParseObject.getDouble("number") });
return mc;
}
答案 0 :(得分:0)
我不确定我是否理解您的代码示例,但我可以回答您的主要问题
如何使用addRow(Object [] columnValues)将多种数据类型放入MatrixCursor?
将数组类型从String
更改为Object
:
mc.addRow(new Object[] {1, "text", 0.666});