1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
| public class MainActivity extends AppCompatActivity {
final String[] strings = {"ooo","abb","zzz","ppp","bcc","ppq","eee","eff","fgg","sss","ghh","hhh","iii","vvv", "jkk","jkl","kkk","yyy","lll","mmm","nnn","aaa","bbb","bdd","qqq","qrr","rrr","ggg","srr","ttt","tfg","uuu", "jjj","www","www","wwe","wwg","xxt","xxx","kin","acc","was","wtg","wfg","brg","hqq"};
ListView mListView; TextView maskTv; SideBar mSideBar;
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViews(); initData(); }
private List<String> initList() { List<String> stringList = new ArrayList<>(); for (int i = 0; i < strings.length; i++) { stringList.add(strings[i]); } Collections.sort(stringList); return stringList; }
private void initData() { MyAdapter adapter = new MyAdapter(this, initList()); mListView.setAdapter(adapter); mSideBar.setListView(mListView); mSideBar.setOnTouchChangedListener(new SideBar.OnTouchChangedListener() { @Override public void onTouchDown(char c) { maskTv.setVisibility(View.VISIBLE); maskTv.setText(c+""); } @Override public void onTouchUp() { maskTv.setVisibility(View.GONE); } }); }
private void findViews() { mListView = (ListView) findViewById(R.id.main_lv); maskTv = (TextView) findViewById(R.id.main_mask_tv); mSideBar = (SideBar) findViewById(R.id.main_sb); }
}
|