2015-08-09 1 views
0

У меня есть пара наборов EditText, которые я установил для видимых нажатием кнопки. В моем onClick он говорит, что мой метод слишком сложный для анализа алгоритмом потока данных. Код работает нормально, когда я запускаю его. Как удалить эту ошибку? Или я должен просто игнорировать его, так как код работает нормально? Любая помощь будет оценена, спасибо.Ошибка алгоритма потока данных при видимости EditText

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); 
    } 
+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); 
    } 
} 
+0

Да, я пробовал это, и это все еще дает мне предупреждение. Так как код работает нормально, я должен беспокоиться о предупреждении алгоритма потока данных? –

+0

Можете ли вы опубликовать еще какой-нибудь код о том, чего вы пытаетесь достичь, и откуда вы вызываете этот метод? – androholic

+0

На самом деле я исправил его. Вместо использования инструкции if/else я использовал Booleans для проверки того, был ли предыдущий EditText isShown, а затем сделать следующий видимым. Спасибо за ввод. –