作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试更改特定 Activity 的一位与会者的状态。
以下示例演示如何更新事件标题:
ContentResolver cr = context.getContentResolver();
ContentValues values = new ContentValues();
values.put(Events.TITLE, "Some new title");
String selectedEventId = "123";
String[] selArgs = new String[]{selectedEventId};
int updated = cr.update(
Events.CONTENT_URI,
values,
Events._ID + " =? ",
selArgs);
但我需要特定与会者的更新信息。所以我需要以某种方式更改查询的 Where
部分。
现在我有 Events._ID + "=?
这意味着 其中 eventID=123
这一行将设置新类型:
values.put(Attendees.ATTENDEE_STATUS, "1"); // 1 - ACCEPTED
如何编写 where
语句以通过电子邮件更新特定与会者(比如说)aaa.bbb@gmail.com
[编辑]
我尝试过:
String selectedEventId = eventStructure.getString("mEventId");
String selectedEmail = "aaa.bbb@gmail.com";
String[] selArgs = new String[]{selectedEventId, selectedEmail};
int updated =
cr.
update(
Events.CONTENT_URI,
values,
Events._ID + " =? AND " + Attendees.ATTENDEE_EMAIL + " =?",
selArgs);
但出现异常:
android.database.sqlite.SQLiteException: no such column: attendeeEmail (code 1): ,
while compiling: SELECT * FROM Events WHERE _id =? AND attendeeEmail =?
感谢您的帮助,
最佳答案
由于您想要更新与会者信息,因此需要将 Uri
从 Events.CONTENT_URI
更改为 Attendees.CONTENT_URI
。
另外,Events._ID
改为 Attendees.CONTENT_URI
。
所以代码 fragment 应该是这样的:
values.put(Attendees.ATTENDEE_STATUS, "1");
String selectedEventId = eventStructure.getString("mEventId");
String selectedEmail = "aaa.bbb@gmail.com";
String[] selArgs = new String[]{selectedEventId, selectedEmail};
int updated = cr.update(
Attendees.CONTENT_URI,
values,
Attendees.EVENT_ID + " =? AND " + Attendees.ATTENDEE_EMAIL + " =?",
selArgs);
Log.d(TAG, "sendAcceptEvent :: updated row count: "+ updated);
<小时/>
没有测试,但应该可以工作
关于java - 如何使用ContentResolver Android更新与会者信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23383045/
我的目标是将一些受邀者添加到 EKEvent。我已经研究过类似的其他问题,例如 this one , 但所有人都说基本上不可能以编程方式将 EKParticipant 添加到 EKEvent 中。我确
我是一名优秀的程序员,十分优秀!