简体   繁体   中英

How to detect swipe gesture across multiple views in android?

I have a Grid Layout with multiple TextViews as children. I have added an event listener to each TextView. I want to detect when a user swipes across multiple TextViews in the layout

ie I want to identify all the TextViews that have been touched while swiping.

I recieve touch event for only the first TextView that has been touched , I do not receive any touch events for other TextViews when user swipes his finger across multiple TextViews in GridLayout.

I have tried using

 TextView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
        }
    });

,

TextView.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View view, MotionEvent event) {

        }
    });

and

 TextView.setOnHoverListener(new View.OnHoverListener() {
        @Override
        public boolean onHover(View v, MotionEvent event) {
            return false;
        }
    });

I have also tried overriding

@Override
public boolean onTouchEvent(MotionEvent event) {
}

What should i do now ?

try to grid view ItemClickListener.

grid.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view, int position, long id) { // Get the GridView selected/clicked item text String selectedItem = parent.getItemAtPosition(position).toString(); // Display the selected/clicked item text and position on TextView tv.setText("GridView item clicked : " +selectedItem + "\\nAt index position : " + position); } });

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM