SCROLL_STATE_IDLE无法解析符号为什么?

时间:2016-07-13 17:26:54

标签: android android-studio

我已经实现了这个方法,正如许多其他教程所说,但在我的情况下编译器引发错误。为什么呢?

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {

    final RecyclerView recList = (RecyclerView) v.findViewById(R.id.ratingIconList);
    recList.addOnScrollListener(new RecyclerView.OnScrollListener(){
                    @Override
                    public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
                        super.onScrollStateChanged(recyclerView, newState);

                        if (newState == SCROLL_STATE_IDLE) {
                            MainActivity.programmaticScrollEnable = true;
                        }
                    }

enter image description here

2 个答案:

答案 0 :(得分:0)

据推测,您的课程不会扩展已定义SCROLL_STATE_IDLE的课程。

由于您似乎正在使用RecyclerView,或许您应该using RecyclerView.SCROLL_STATE_IDLE

答案 1 :(得分:0)

由于您要将ScrollListener添加到ReciclerView,因此必须引用SCROLL_STATE_IDLE,如下所示:

RecyclerView.SCROLL_STATE_IDLE

SCROLL_STATE_IDLE只能在ListView中使用,而OnScrollListener扩展AbsListView.OnScrollListener(这不是你的情况)。

更改自:

if (newState == SCROLL_STATE_IDLE) {
    MainActivity.programmaticScrollEnable = true;
}

要:

if (newState == RecyclerView.SCROLL_STATE_IDLE) {
    MainActivity.programmaticScrollEnable = true;
}

您不需要任何导入,因为此constast是已导入项目的ReciclerView的成员。