daimajia / AndroidSwipeLayout

The Most Powerful Swipe Layout!
MIT License
12.38k stars 2.67k forks source link

Gridview on bottomview imageview clicklistener. #234

Closed damonbakker closed 8 years ago

damonbakker commented 9 years ago

At the moment i have the following methods for an exact replica of the GridView activity in this repository.

 View rootview =  inflater.inflate(R.layout.fragment_inventory, container, false);

    final GridView gridView = (GridView)rootview.findViewById(R.id.gridView_inventory);

    final GridViewAdapter adapter = new GridViewAdapter(getActivity(),1,2);

    adapter.setMode(com.daimajia.swipe.util.Attributes.Mode.Multiple);
    gridView.setAdapter(adapter);
    gridView.setSelected(false);

    gridView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
        @Override
        public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
            Log.e("onItemLongClick", "onItemLongClick:" + position);
            return false;
        }
    });

    gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            Log.e("onItemClick", "onItemClick:" + position);
        }
    });

    gridView.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
            Log.e("onItemSelected", "onItemSelected:" + position);
        }

        @Override
        public void onNothingSelected(AdapterView<?> parent) {

        }
    });

However, is it possible to get any indication on when one of the items behind the surface view is clicked, like the trashcan which is there by default sample.

I would like to achieve this but do not know if there is an implementation for that and could not find anything about it in the wiki.

damonbakker commented 9 years ago

java.lang.NullPointerException: Attempt to invoke virtual method 'void com.daimajia.swipe.SwipeLayout.setShowMode(com.daimajia.swipe.SwipeLayout$ShowMode)' on a null object referenc

is the error i get if i mimic the way the general sample handles onclickviews for bottomview.

  final GridView gridView = (GridView)rootview.findViewById(R.id.gridView_inventory);
    final SwipeLayout sample2 = (SwipeLayout) rootview.findViewById(R.id.swipe);
    sample2.setShowMode(SwipeLayout.ShowMode.LayDown);

    final GridViewAdapter adapter = new GridViewAdapter(getActivity(),1,2);

    adapter.setMode(com.daimajia.swipe.util.Attributes.Mode.Multiple);
    gridView.setAdapter(adapter);
    gridView.setSelected(false);

    sample2.findViewById(R.id.trash).setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Toast.makeText(getActivity(), "Star", Toast.LENGTH_SHORT).show();
        }
    });