1
几个概念,我无法理解在下面的代码中的某些概念:了解的内容提供商
1)为什么我们using.arg0.getPathSegments()得到(1)?
2)get(1)的值是多少?
3)什么是 (!TextUtils.isEmpty(arg1)?“AND(”+ arg1 +')':“”),arg2);
public int delete(Uri arg0, String arg1, String[] arg2) {
int count=0;
switch (uriMatcher.match(arg0)){
case BOOKS:
count = booksDB.delete(
DATABASE_TABLE,
arg1,
arg2);
break;
case BOOK_ID:
String id = arg0.getPathSegments().get(1);
count = booksDB.delete(
DATABASE_TABLE,
_ID + " = " + id +
(!TextUtils.isEmpty(arg1) ? " AND (" +
arg1 + ')' : ""),
arg2);
break;
default: throw new IllegalArgumentException(
"Unknown URI " + arg0);
}
getContext().getContentResolver().notifyChange(arg0, null);
return count;
1 /阅读文档。这是第二条路径。看看uri格式,这应该是有道理的。 2 /调试它或记录它,这取决于arg0 Uri 3 /这是一个三元符号。它用于在arg1上添加一个条件为arg1存在。 – njzk2