我有一个包含两个属性的表:名称和数字。我有一个用户输入名称的editext,我应该可以删除包含该名称的行。
答案 0 :(得分:0)
private EditText txtDescription = (EditText) layout.findViewById(R.id.txtDescription)
String string = txtDescription.getText().toString();
解析对象:
在Parse上存储数据是围绕ParseObject构建的。每个ParseObject包含与JSON兼容的数据的键值对。这些数据是无模式的,这意味着您不需要提前指定每个ParseObject上存在哪些键。你只需设置你想要的任何键值对,我们的后端就会存储它。
答案 1 :(得分:0)
首先使用:
String text = edittext.getText().toString();
之后,请使用此查询:
ParseQuery<ParseObject> query = ParseQuery.getQuery(TableName);
query.whereEqualTo("Name", text);
query.getInBackground(objectId, new GetCallback<ParseObject>() {
public void done(ParseObject object, ParseException e) {
if (e == null) {
object.deleteInBackground();
} else {
// something went wrong
}
}
});
如果您需要更多信息,请转到:https://parse.com/docs/android/guide
答案 2 :(得分:0)
String userName= edittext.getText().toString();
如果 userName 包含解析中的多行,
要逐个删除,请使用以下代码
ParseQuery<ParseObject> query = ParseQuery.getQuery("your table name");
query.whereEqualTo("table_coloumn_name", userName);
query.findInBackground(new FindCallback<ParseObject>() {
@Override
public void done(List<ParseObject> objects, ParseException e) {
for (ParseObject object : objects) {
try {
object.delete();
object.saveInBackground();
} catch (ParseException exe) {
exe.printStackTrace();
}
}
}
});
要删除所有行,请使用以下代码
ParseQuery<ParseObject> query = ParseQuery.getQuery("your table name");
query.whereEqualTo("table_coloumn_name", userName);
query.findInBackground(new FindCallback<ParseObject>() {
@Override
public void done(List<ParseObject> objects, ParseException e) {
ParseObject.deleteAllInBackground(objects, new DeleteCallback() {
@Override
public void done(ParseException e) {
Log.d("delted", "success");
}
});
}
});