Android實現(xiàn)列表數(shù)據(jù)按名稱排序、中英文混合排序
有時候我們需要多列表中的數(shù)據(jù)進(jìn)行特定的排序,最近項目中用到的是按名稱排序,所以簡單來說一下:
效果圖:

排序方法:
Collections.sort(students, new SortChineseName());
for (Student s : students) {
Log.e("David", "名稱正序排列:" + s.getName());
}
Log.d("David", "---------------------------------------");
Collections.reverse(students);
for (Student s : students) {
Log.e("David", "名稱倒序排列(一):" + s.getName());
}
Log.d("David", "---------------------------------------");
Collections.sort(students, Collections.reverseOrder(new SortChineseName()));
for (Student s : students) {
Log.e("David", "名稱倒序排列(二):" + s.getName());
}
sort方法
class SortChineseName implements Comparator<ResolveInfo> {
/**
* create by Davide
* 參數(shù)說明:
* ResolveInfo 為你的List集合中的類-我這里為 android系統(tǒng)中apk信息類
*/
private Context mContext;
//構(gòu)造-傳進(jìn)來context對象
public SortChineseName(Context mContext) {
this.mContext = mContext;
}
Collator cmp = Collator.getInstance(java.util.Locale.CHINA);
@Override
public int compare(ResolveInfo info1, ResolveInfo info2) {
String apkName1 = info1.loadLabel(mContext.getPackageManager()).toString();
String apkName2 = info2.loadLabel(mContext.getPackageManager()).toString();
/**
*create by Davide
*開始比較-我這兒按照apk的名稱排序,便獲取apkName
*/
if (cmp.compare(apkName1, apkName2) > 0) {
return 1;
} else if (cmp.compare(apkName1, apkName2) < 0) {
return -1;
}
return 0;
}
}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android DragImageView實現(xiàn)下拉拖動圖片放大效果
這篇文章主要為大家詳細(xì)介紹了Android DragImageView實現(xiàn)下拉拖動圖片放大效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-12-12
Android與單片機通信常用數(shù)據(jù)轉(zhuǎn)換方法總結(jié)
本文主要介紹Android與單片機通信常用數(shù)據(jù)轉(zhuǎn)換方法,這里提供了代碼示例,有需要的小伙伴可以參考下2016-09-09
android內(nèi)存優(yōu)化之圖片優(yōu)化
對圖片本身進(jìn)行操作。盡量不要使用setImageBitmap、setImageResource、BitmapFactory.decodeResource來設(shè)置一張大圖,因為這些方法在完成decode后,最終都是通過java層的createBitmap來完成的,需要消耗更多內(nèi)存2012-12-12
Android編程實現(xiàn)滑動開關(guān)組件功能【附源碼下載】
這篇文章主要介紹了Android編程實現(xiàn)滑動開關(guān)組件功能,結(jié)合實例形式詳細(xì)分析了Android滑動開關(guān)組件的簡單布局與功能實現(xiàn)技巧,并附帶完整實例源碼供讀者下載參考,需要的朋友可以參考下2018-01-01
Android中AutoCompleteTextView與MultiAutoCompleteTextView的用法
這篇文章主要介紹了Android中AutoCompleteTextView與MultiAutoCompleteTextView的用法,需要的朋友可以參考下2014-07-07
Android自定義FloatingActionButton滑動行為只隱藏不出現(xiàn)的問題小結(jié)
這篇文章主要介紹了Android自定義FloatingActionButton滑動行為只隱藏不出現(xiàn)的問題小結(jié),需要的朋友可以參考下2017-01-01
Android自定義Dialog實現(xiàn)文字動態(tài)加載效果
這篇文章主要為大家詳細(xì)介紹了Android自定義Dialog實現(xiàn)文字動態(tài)加載效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-08-08
Android中PopupWindow響應(yīng)返回鍵并關(guān)閉的2種方法
這篇文章主要介紹了Android中PopupWindow響應(yīng)返回鍵并關(guān)閉的2種方法,本文講解了最簡單的方法、最通用的方法,需要的朋友可以參考下2015-04-04

