项目:fast-list
文件:SortedListAdapter.java
public SortedListAdapter() {
mUsers = new SortedList<>(User.class,new SortedListAdapterCallback<User>(this) {
@Override
public boolean areContentsTheSame(User oldItem,User newItem) {
return User.areContentsTheSame(oldItem,newItem);
}
@Override
public boolean areItemsTheSame(User item1,User item2) {
return User.areItemsTheSame(item1,item2);
}
@Override
public int compare(User o1,User o2) {
return User.compare(o1,o2);
}
});
}
项目:AutoAdapter
文件:SortedAdapterDataStructure.java
public SortedAdapterDataStructure(@NonNull final SortedAutoAdapter autoAdapter) {
super(OrderableRenderer.class,new SortedListAdapterCallback<OrderableRenderer>(autoAdapter) {
@Override
public int compare(OrderableRenderer o1,OrderableRenderer o2) {
return autoAdapter.compare(o1,o2);
}
@Override
public boolean areContentsTheSame(OrderableRenderer oldItem,OrderableRenderer newItem) {
return autoAdapter.areContentsTheSame(oldItem,newItem);
}
@Override
public boolean areItemsTheSame(OrderableRenderer item1,OrderableRenderer item2) {
return autoAdapter.areItemsTheSame(item1,item2);
}
});
}
项目:playbook-android-sortedlist
文件:GroupedArticleDataset.java
public GroupedArticleDataset(final RecyclerView recyclerView,final RecyclerView.Adapter adapter) {
this.sortedList = new SortedList<>(GroupedArticle.class,new SortedList.BatchedCallback<>(new SortedListAdapterCallback<GroupedArticle>(adapter) {
@Override public int compare(GroupedArticle a1,GroupedArticle a2) {
return a1.compare(a2,getComparator());
}
@Override
public boolean areContentsTheSame(GroupedArticle oldItem,GroupedArticle newItem) {
return oldItem.areContentsTheSame(newItem);
}
@Override public boolean areItemsTheSame(GroupedArticle item1,GroupedArticle item2) {
return item1.areItemsTheSame(item2);
}
@Override public void onInserted(int position,int count) {
super.onInserted(position,count);
recyclerView.scrollToPosition(position);
}
}));
}
项目:playbook-android-sortedlist
文件:SortedListShouldBeSortedAdapter.java
public SortedListShouldBeSortedAdapter(ArrayList<Article> articles) {
articleSortedList =
new SortedList<>(Article.class,new SortedListAdapterCallback<Article>(this) {
@Override public int compare(Article o1,Article o2) {
return o1.compare(o2);
}
@Override public boolean areContentsTheSame(Article oldItem,Article newItem) {
return oldItem.areContentsTheSame(newItem);
}
@Override public boolean areItemsTheSame(Article item1,Article item2) {
return item1.areItemsTheSame(item2);
}
});
articleSortedList.addAll(articles);
}
项目:playbook-android-sortedlist
文件:SortedListBatchOperationsAdapter.java
public SortedListBatchOperationsAdapter(ArrayList<Article> articles) {
super(articles);
articleSortedList = new SortedList<>(Article.class,new SortedList.BatchedCallback<>(new SortedListAdapterCallback<Article>(this) {
@Override public int compare(Article o1,Article item2) {
return item1.areItemsTheSame(item2);
}
}));
articleSortedList.beginBatchedUpdates();
articleSortedList.addAll(articles);
articleSortedList.endBatchedUpdates();
}
项目:playbook-android-sortedlist
文件:ArticleRowDataset.java
public ArticleRowDataset(final RecyclerView recyclerView,final RecyclerView.Adapter adapter) {
this.sortedList = new SortedList<>(ArticleRow.class,new SortedList.BatchedCallback<>(new SortedListAdapterCallback<ArticleRow>(adapter) {
@Override public int compare(ArticleRow a1,ArticleRow a2) {
return a1.compare(a2);
}
@Override public boolean areContentsTheSame(ArticleRow oldItem,ArticleRow newItem) {
return oldItem.areContentsTheSame(newItem);
}
@Override public boolean areItemsTheSame(ArticleRow item1,ArticleRow item2) {
return item1.areItemsTheSame(item2);
}
@Override public void onInserted(int position,count);
recyclerView.scrollToPosition(position);
}
}));
addInitialData();
}
项目:playbook-android-sortedlist
文件:ArticleSortOptionsActivity.java
public ArticleDataset(final RecyclerView recyclerView,final RecyclerView.Adapter adapter) {
this.sortedList = new SortedList<>(Article.class,new SortedList.BatchedCallback<>(new SortedListAdapterCallback<Article>(adapter) {
@Override public int compare(Article a1,Article a2) {
return getComparator().compare(a1,a2);
}
@Override public boolean areContentsTheSame(Article oldItem,Article item2) {
return item1.areItemsTheSame(item2);
}
@Override public void onInserted(int position,count);
recyclerView.scrollToPosition(position);
}
}));
}
项目:playbook-android-sortedlist
文件:SortedListAdapter.java
public SortedListAdapter() {
this.sortedList = new SortedList<>(Integer.class,new SortedListAdapterCallback<Integer>(this) {
@Override public int compare(Integer item1,Integer item2) {
return item1.compareTo(item2);
}
@Override public boolean areContentsTheSame(Integer oldItem,Integer newItem) {
return oldItem.equals(newItem);
}
@Override public boolean areItemsTheSame(Integer item1,Integer item2) {
return item1.intValue() == item2.intValue();
}
});
;
}
项目:playbook-android-sortedlist
文件:ArticleDataset.java
public ArticleDataset(final RecyclerView recyclerView,count);
recyclerView.scrollToPosition(position);
}
}));
}
项目:Game-of-Thrones
文件:SortedMessageCollection.java
public SortedMessageCollection(RecyclerView.Adapter adapter) {
messageList = new SortedList<Message>(Message.class,new SortedListAdapterCallback<Message>(adapter) {
@Override
public int compare(Message o1,Message o2) {
return o1.compareTo(o2);
}
@Override
public boolean areContentsTheSame(Message oldItem,Message newItem) {
return oldItem.equals(newItem);
}
@Override
public boolean areItemsTheSame(Message item1,Message item2) {
return item1.getId().equals(item2.getId());
}
});
}
项目:appbarsyncedfab
文件:ItemsAdapter.java
public ItemsAdapter(OnItemClickListener onItemClickListener) {
this.onItemClickListener = onItemClickListener;
dataset = new SortedList<>(Long.class,new SortedListAdapterCallback<Long>(this) { // yes,we're leaking half-constructed this. Currently,it's fine.
@Override
public int compare(Long left,Long right) {
// Long.compare(left,right)
return left < right ? -1 : (left.longValue() == right.longValue() ? 0 : 1);
}
@Override
public boolean areContentsTheSame(Long oldItem,Long newItem) {
// Object.equals(oldItem,newItem)
return (oldItem == null) ? (newItem == null) : oldItem.equals(newItem);
}
@Override
public boolean areItemsTheSame(Long item1,Long item2) {
// Object.equals(item1,item2)
return (item1 == null) ? (item2 == null) : item1.equals(item2);
}
});
setHasStableIds(true);
}
项目:quotes
文件:QuoteAdapter.java
public QuoteAdapter() {
quoteList = new SortedList(Quote.class,new SortedListAdapterCallback<Quote>(this) {
@Override
public int compare(Quote o1,Quote o2) {
return o1.compareTo(o2);
}
@Override
public boolean areContentsTheSame(Quote oldItem,Quote newItem) {
return oldItem.equals(newItem);
}
@Override
public boolean areItemsTheSame(Quote item1,Quote item2) {
return item1.getId().equals(item2.getId());
}
});
}
项目:RecyclerViewCursorAdapter
文件:RecyclerViewCursorAdapter.java
/** If you just need a plain sortedlist */
public RecyclerViewCursorAdapter(@NonNull Class<T> klass,@Nullable Cursor cursor) {
setSortedList(new SortedList<>(klass,new SortedListAdapterCallback<T>(this) {
@Override
public int compare(T o1,T o2) {
return 0;
}
@Override
public boolean areContentsTheSame(T oldItem,T newItem) {
return false;
}
@Override
public boolean areItemsTheSame(T item1,T item2) {
return false;
}
}));
setCursor(cursor);
}
项目:materialize
文件:FilteredSortedListAdapter.java
public FilteredSortedListAdapter(Class<T> type,FilteredSortedList.Filter<T> filter) {
this.data = new FilteredSortedList<>(type,new SortedListAdapterCallback<T>(this) {
@Override
public int compare(T lhs,T rhs) {
return FilteredSortedListAdapter.this.compare(lhs,rhs);
}
@Override
public boolean areContentsTheSame(T oldItem,T newItem) {
return FilteredSortedListAdapter.this.areContentsTheSame(oldItem,newItem);
}
@Override
public boolean areItemsTheSame(T item1,T item2) {
return FilteredSortedListAdapter.this.areItemsTheSame(item1,item2);
}
},filter);
}
项目:Exoplayer2Radio
文件:CollectionAdapter.java
public CollectionAdapter (Activity activity,File folder) {
// set main variables
mActivity = activity;
mFolder = folder;
mStationIDSelected = 0;
mStationList = new SortedList<Station>(Station.class,new SortedListAdapterCallback<Station>(this) {
@Override
public int compare(Station station1,Station station2) {
// Compares two stations: returns "1" if name if this station is greater than name of given station
return station1.getStationName().compareToIgnoreCase(station2.getStationName());
}
@Override
public boolean areContentsTheSame(Station oldStation,Station newStation) {
return oldStation.getStationName().equals(newStation.getStationName());
}
@Override
public boolean areItemsTheSame(Station station1,Station station2) {
// return station1.equals(station2);
return areContentsTheSame(station1,station2);
}
});
// fill station list
loadCollection();
// load state
// loadAppState(mActivity);
}
项目:Open-Quran-Radio
文件:CollectionAdapter.java
public CollectionAdapter(Activity activity,Station station2) {
// Compares two stations: returns "1" if name if this station is greater than name of given station
int result = Integer.compare(station2.IS_FAVOURITE,station1.IS_FAVOURITE);
if (result == 0) {//equal
result = station1.CATEGORY.compareToIgnoreCase(station2.CATEGORY);
if (result == 0) {
result = station1.TITLE.compareToIgnoreCase(station2.TITLE);
}
}
return result;
}
@Override
public boolean areContentsTheSame(Station oldStation,Station newStation) {
return oldStation.StreamURI.equals(newStation.StreamURI);
}
@Override
public boolean areItemsTheSame(Station station1,station2);
}
});
// fill station list
loadCollection();
}
项目:lucky-calories
文件:UserListFragment.java
public UserListFragment() {
// Required empty public constructor
usersTransformer = new Transformer
.Builder()
.build(io.swagger.client.model.User.class);
usersAdapter = new UsersAdapter();
usersList = new SortedList<>(UserModel.class,new SortedListAdapterCallback<UserModel>(usersAdapter) {
@Override
public int compare(UserModel u1,UserModel u2) {
if(u1.getName() == null)
return -1;
if(u2.getName() == null)
return 1;
return u1.getName().compareTo(u2.getName());
}
@Override
public boolean areContentsTheSame(UserModel oldItem,UserModel newItem) {
return oldItem.getName().equals(newItem.getName());
}
@Override
public boolean areItemsTheSame(UserModel item1,UserModel item2) {
return item1.getId() == item2.getId();
}
});
}
项目:sagetv-miniclient
文件:ServersAdapter.java
public ServersAdapter(Context ctx) {
this.context = ctx;
this.layoutInflater = LayoutInflater.from(context);
// get the saved servers,and add them
items = new SortedList<ServerInfo>(ServerInfo.class,new SortedListAdapterCallback<ServerInfo>(this) {
@Override
public int compare(ServerInfo o1,ServerInfo o2) {
// sort by date accessed and then name
int compare = 0;
if (o1.lastConnectTime < o2.lastConnectTime) compare = 1;
if (o1.lastConnectTime > o2.lastConnectTime) compare = -1;
if (compare == 0) {
return o1.name.compareTo(o2.name);
}
return compare;
}
@Override
public boolean areContentsTheSame(ServerInfo oldItem,ServerInfo newItem) {
return oldItem.equals(newItem);
}
@Override
public boolean areItemsTheSame(ServerInfo item1,ServerInfo item2) {
return item1.equals(item2);
}
});
log.debug("Begin Adding Saved Servers");
addAll(MiniclientApplication.get(ctx.getApplicationContext()).getClient().getServers().getSavedServers());
log.debug("End Adding Saved Servers");
}
项目:android-support-learn
文件:SortedListActivity.java
public SortedListAdapter(LayoutInflater layoutInflater,Item... items) {
mLayoutInflater = layoutInflater;
mData = new SortedList<Item>(Item.class,new SortedListAdapterCallback<Item>(this) {
@Override
public int compare(Item t0,Item t1) {
if (t0.mIsDone != t1.mIsDone) {
return t0.mIsDone ? 1 : -1;
}
int txtComp = t0.mText.compareTo(t1.mText);
if (txtComp != 0) {
return txtComp;
}
if (t0.id < t1.id) {
return -1;
} else if (t0.id > t1.id) {
return 1;
}
return 0;
}
@Override
public boolean areContentsTheSame(Item oldItem,Item newItem) {
return oldItem.mText.equals(newItem.mText);
}
@Override
public boolean areItemsTheSame(Item item1,Item item2) {
return item1.id == item2.id;
}
});
for (Item item : items) {
mData.add(item);
}
}
项目:dev-summit-architecture-demo
文件:FeedAdapter.java
public FeedAdapter(Context context) {
mLayoutInflater = LayoutInflater.from(context);
mList = new SortedList<>(FeedItem.class,new SortedListAdapterCallback<FeedItem>(this) {
@Override
public int compare(FeedItem o1,FeedItem o2) {
Post p2 = o2.getPost();
Post p1 = o1.getPost();
if (p1.isPending() != p2.isPending()) {
return p1.isPending() ? -1 : 1;
}
return (int) (p2.getCreated() - p1.getCreated());
}
@SuppressWarnings("SimplifiableIfStatement")
@Override
public boolean areContentsTheSame(FeedItem oldItem,FeedItem newItem) {
Post oldPost = oldItem.getPost();
Post newPost = newItem.getPost();
if (oldPost.getId() != newPost.getId()) {
return false;
}
if (!oldPost.getText().equals(newPost.getText())) {
return false;
}
if (!oldItem.getUser().getName().equals(newItem.getUser().getName())) {
return false;
}
return oldItem.getPost().isPending() == newItem.getPost().isPending();
}
@Override
public boolean areItemsTheSame(FeedItem item1,FeedItem item2) {
return item1.getPost().getId() == item2.getPost().getId();
}
});
}
项目:Android-Password-Store
文件:AutofillRecyclerAdapter.java
AutofillRecyclerAdapter(List<AppInfo> allApps,final PackageManager pm,AutofillPreferenceActivity activity) {
SortedList.Callback<AppInfo> callback = new SortedListAdapterCallback<AppInfo>(this) {
// don't take into account secondary text. This is good enough
// for the limited add/remove usage for websites
@Override
public int compare(AppInfo o1,AppInfo o2) {
return o1.appName.toLowerCase().compareTo(o2.appName.toLowerCase());
}
@Override
public boolean areContentsTheSame(AppInfo oldItem,AppInfo newItem) {
return oldItem.appName.equals(newItem.appName);
}
@Override
public boolean areItemsTheSame(AppInfo item1,AppInfo item2) {
return item1.appName.equals(item2.appName);
}
};
this.apps = new SortedList<>(AppInfo.class,callback);
this.apps.addAll(allApps);
this.allApps = new ArrayList<>(allApps);
this.activity = activity;
try {
browserIcon = activity.getPackageManager().getApplicationIcon("com.android.browser");
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。