ユーザがスクロールアップまたはスクロールするときを知る必要があります。私はそれを達成することができましたが、今私はそれが必要な私のメインクラスに結果を戻すことに固執しています。具体的には、作成したインターフェイスに結果を渡す方法がわかりません。ここでカスタムScrollViewクラスを使用してインターフェイスを実装する - Android
は私が取得エラーです:
Attempt to invoke interface method 'void com.app.android.interfaces.ScrollDirection.Down(int)' on a null object reference
そして、ここでは私のカスタムScrollViewは次のとおりです。
public class CustomScrollView extends ScrollView {
private ScrollDirection scrolldirection;
public CustomScrollView(Context context) {
super(context);
scrolldirection = (ScrollDirection) context;
}
public CustomScrollView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public CustomScrollView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
@Override
protected void onScrollChanged(int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
super.onScrollChanged(scrollX, scrollY, oldScrollX, oldScrollY);
if(scrollY<oldScrollY){
scrolldirection.Down(1);
}else{
scrolldirection.Down(-1);
}
}
public interface ScrollDirection{
public void Down(int direction);
}
}
「scrolldirection」が初期化されていないようです。したがって、 'NullPointerException'。あなたのコンストラクタにデバッグポイントを入れて、楽しくてください! –