Advertisement
Guest User

Untitled

a guest
Dec 3rd, 2016
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.72 KB | None | 0 0
  1. ListView listView = (ListView) findViewById(R.id.main_menu_list_view);
  2. listView.setAdapter(new MenuAdapter(this, adapterArray));
  3. listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
  4. @Override
  5. public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
  6. menuItemClicked(position);
  7.  
  8. }
  9. });
  10.  
  11. private ArrayList<? extends IMenuPrintable> items;
  12. private Context context;
  13. private ArrayList<Integer> hiddenPositions = new ArrayList<>();
  14. public MenuAdapter(Context context, ArrayList<? extends IMenuPrintable> items) {
  15. this.context = context;
  16. this.items = items;
  17.  
  18. if (this.items == null) {
  19. this.items = new ArrayList<>();
  20. }
  21.  
  22. }
  23.  
  24. @Override
  25. public int getCount() {
  26. return this.items.size() - hiddenPositions.size();
  27. }
  28.  
  29. @Override
  30. public Object getItem(int position) {
  31.  
  32. return this.items.get(position);
  33. }
  34.  
  35. @Override
  36. public long getItemId(int position) {
  37. return position;
  38. }
  39.  
  40. @Override
  41. public View getView(int position, View convertView, ViewGroup parent) {
  42. if (convertView == null) {
  43. convertView = ((Activity) context).getLayoutInflater().inflate(R.layout.main_menu_row, parent, false);
  44. }
  45. LDService service = (LDService) items.get(position);
  46. if (service.type.equals("4")) {
  47. hideItem(position);
  48. for(Integer hiddenIndex : hiddenPositions) {
  49. if(hiddenIndex <= position) {
  50. position = position + 1;
  51. }
  52. }
  53.  
  54. }
  55. return convertView;
  56. }
  57. private void hideItem(int itemToHide) {
  58.  
  59. if(!hiddenPositions.contains(itemToHide)){
  60. hiddenPositions.add(itemToHide);
  61. }
  62.  
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement