在EditText可见性上获取数据流算法错误

时间:2015-08-09 06:10:45

标签: android android-edittext visibility buttonclick

我有几组EditText,我在按钮点击时设置为可见。在我的onClick上,它说我的方法过于复杂,无法通过数据流算法进行分析。我运行它时代码工作正常。如何删除此错误?或者我应该忽略它,因为代码工作正常?任何帮助将不胜感激,谢谢。

public void showEditText(){ //method is too complex to analyze by data algorithm

    if(!et1.isShown() && !et2.isShown()){
        et1.setVisibility(View.VISIBLE);
        et2.setVisibility(View.VISIBLE);
    }else if(!et2.isShown() && !et3.isShown()){
        et2.setVisibility(View.VISIBLE);
        et3.setVisibility(View.VISIBLE);
    }else if(!et4.isShown() && !et5.isShown()){
        et4.setVisibility(View.VISIBLE);
        et5.setVisibility(View.VISIBLE);
    }else if(!et6.isShown() && !et7.isShown()){
        et6.setVisibility(View.VISIBLE);
        et7.setVisibility(View.VISIBLE);
    }else if(!et8.isShown() && !et9.isShown()){
        et8.setVisibility(View.VISIBLE);
        et9.setVisibility(View.VISIBLE);
    }else if(!et10.isShown() && !et11.isShown()){
        et10.setVisibility(View.VISIBLE);
        et11.setVisibility(View.VISIBLE);
    }else if(!et12.isShown() && !et13.isShown()){
        et12.setVisibility(View.VISIBLE);
        et13.setVisibility(View.VISIBLE);
    }else if(!et14.isShown() && !et15.isShown()){
        et14.setVisibility(View.VISIBLE);
       et15.setVisibility(View.VISIBLE);
    }

1 个答案:

答案 0 :(得分:1)

您收到错误是因为您的代码对于IntelliJ的数据流算法来说过于复杂。而不是所有if else语句更清晰的方法,理想情况下你可能想要做的是传递你想要显示为方法的参数的edittexts:

public void showEditText(EditText et1, EditText et2) {
   if(!et1.isShown() && !et2.isShown()){
        et1.setVisibility(View.VISIBLE);
        et2.setVisibility(View.VISIBLE);
    }
}