gpt4 book ai didi

android - 类必须声明为抽象的还是?

转载 作者:行者123 更新时间:2023-11-29 14:24:22 25 4
gpt4 key购买 nike

我是安卓新手。我一直使用 fragment 来创建我的应用程序。所以我从这个 here 复制了 Material 风格的抽屉.

现在我在这部分代码中遇到问题:

static class RecyclerTouchListener implements RecyclerView.OnItemTouchListener {

private GestureDetector gestureDetector;
private ClickListener clickListener;

public RecyclerTouchListener(Context context, final RecyclerView recyclerView, final ClickListener clickListener) {
this.clickListener = clickListener;
gestureDetector = new GestureDetector(context, new GestureDetector.SimpleOnGestureListener() {
@Override
public boolean onSingleTapUp(MotionEvent e) {
return true;
}

@Override
public void onLongPress(MotionEvent e) {
View child = recyclerView.findChildViewUnder(e.getX(), e.getY());
if (child != null && clickListener != null) {
clickListener.onLongClick(child, recyclerView.getChildPosition(child));
}
}
});
}

@Override
public boolean onInterceptTouchEvent(RecyclerView rv, MotionEvent e) {

View child = rv.findChildViewUnder(e.getX(), e.getY());
if (child != null && clickListener != null && gestureDetector.onTouchEvent(e)) {
clickListener.onClick(child, rv.getChildPosition(child));
}
return false;
}

@Override
public void onTouchEvent(RecyclerView rv, MotionEvent e) {
}
}

在这段代码中它给出了错误。我可以给image错误

我试图将类抽象化,但它会干扰 oncreate 包代码。任何帮助将不胜感激

最佳答案

此消息告诉您,RecyclerView.OnItemTouchListener(这是一个接口(interface))定义了一个名为 onRequestDisallowInterceptTouchEvent(boolean) 的方法。此方法需要由实现 OnItemTouchListener 接口(interface)的每个类实现。

所以只需添加这个带有空主体的方法...

@Override
public void onRequestDisallowInterceptTouchEvent(boolean disallowIntercept) {
}

... 并查看 Java 语言中的接口(interface): https://docs.oracle.com/javase/tutorial/java/concepts/interface.html

关于android - 类必须声明为抽象的还是?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30955340/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com