Android 按钮单击仅增加一个项目,并保持在该项目,即使我多次单击按钮

Android 按钮单击仅增加一个项目,并保持在该项目,即使我多次单击按钮,android,android-layout,onclick,uibutton,Android,Android Layout,Onclick,Uibutton,当我点击next按钮时,我实现了一种让我的应用程序导航到下一个项目的方法。但出于某种原因,我的应用程序只会增加一次位置,并保持在同一项目上,即使我在同一屏幕中多次单击按钮。在我的循环中是否有任何错误导致这个值只增加一次 public int index_positionPlus; public int index_positionMinus; public String video_URL; public long currentPosition; @Override public View

当我点击
next
按钮时,我实现了一种让我的应用程序导航到下一个项目的方法。但出于某种原因,我的应用程序只会增加一次
位置
,并保持在同一项目上,即使我在同一屏幕中多次单击按钮。在我的循环中是否有任何错误导致这个值只增加一次

public int index_positionPlus;
public int index_positionMinus;
public String video_URL;
public long currentPosition;

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup parent, Bundle saveInstanceState) {
    final View rootView  = inflater.inflate(R.layout.rightside_video_fragment, parent, false);
    ButterKnife.bind(this, rootView);

    currentPosition = C.TIME_UNSET;
    if (saveInstanceState != null) {
        stepDataModels = getArguments().getParcelableArrayList("steps_list");
        mListIndex = saveInstanceState.getInt(ARG_POSITION);
        currentPosition = saveInstanceState.getLong("selected_position", C.TIME_UNSET);
    } else {
            stepDataModels = getArguments().getParcelableArrayList("steps_list");
    }

    if (stepDataModels != null) {
        recipeInstructions.setText(stepDataModels.get(mListIndex).getDescription().toString());
        video_URL = stepDataModels.get(mListIndex).getVideoURL().toString();
    }

    nextButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            if(mListIndex >= 0 && mListIndex <= stepDataModels.size()) {
                index_positionPlus = mListIndex + 1;
                recipeInstructions.setText(stepDataModels.get(index_positionPlus).getDescription().toString());
                video_URL = stepDataModels.get(index_positionPlus).getVideoURL().toString();
            } else {
                recipeInstructions.setText(stepDataModels.get(mListIndex).getDescription().toString());
                video_URL = stepDataModels.get(mListIndex).getVideoURL().toString();
            }
        }
    });
public int index\u positionPlus;
公共整数指数;
公共字符串视频链接;
公共长期职位;
@凌驾
创建视图上的公共视图(LayoutFlater充气器、视图组父级、捆绑包保存实例状态){
最终视图根视图=充气机。充气(R.layout.rightside\u video\u片段,父项,false);
ButterKnife.bind(这个,rootView);
currentPosition=C.TIME\u UNSET;
if(saveInstanceState!=null){
stepDataModels=getArguments().getParcelableArrayList(“步骤列表”);
mListIndex=saveInstanceState.getInt(ARG_位置);
currentPosition=saveInstanceState.getLong(“选定位置”,C.TIME\u未设置);
}否则{
stepDataModels=getArguments().getParcelableArrayList(“步骤列表”);
}
如果(stepDataModels!=null){
recipeInstructions.setText(stepDataModels.get(mListIndex.getDescription().toString());
video_URL=stepDataModels.get(mListIndex.getVideoURL().toString();
}
setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
如果(mListIndex>=0&&mListIndexmake

进入全球。
每次调用该函数时,index\u positionPlus都会重置为零。

index\u positionPlus=0;
在外部初始化。每次单击按钮时,它的值都是0I,并且只在输入最新代码后,它的值仍会增加@KHA@SantanuSur发布了最新的代码更改。我所做的是被删除
index\u positionPlus=0;
inside onClick并将该代码添加到全局变量中OK那么您现在的问题是什么?您的
index\u positionPlus
没有增加吗?我将
index\u positionPlus
添加到全局变量中,并且它只会增加一次在您的if条件下可能有问题,请尝试获取t的值每次你点击按钮,他都会显示索引。
 index_positionPlus = 0;