2013-12-04 4 views
1

Я хочу спросить, как я могу сделать if-инструкцию, используя код ниже? Я попробовал это, и он дал мне ошибку; его утверждение не может преобразовать void в bool. любое предложение?Оператор if-else для images.setvisibilty

if(images.setVisibility(View.GONE)){ 
Display(); 
} 

ответ

0

Вы можете просто использовать ниже двух кодов:

  1. если (images.getVisibility == view.GONE) { Дисплей(); }

getVisibility() возвращает целое число.

вы также можете проверить с целочисленным кодом

т.е.

VISIBLE-0 
GONE-8 
INVISIBLE-4 

2.

if(images.getVisibility==0) 
//VISIBLE 
if(images.getVisibility==4) 
//INVISIBLE 
if(images.getVisibility==8) 
//GONE 
+0

, когда мы можем определить константу View как 'View.GONE', то почему статическое постоянное значение liek 0,8,4. –

+0

Это всего лишь два способа. ничего другого, поведение, очевидно, такое же –

+0

Я знаю, но мы должны избегать статического постоянного значения напрямую, потому что это не очень хорошая практика. –

2

Вы должны получить visibilty и проверить его ..

if(images.getVisibility()==View.GONE){ 
     Display(); 
} 
+0

Почему downvote ?? Можете ли вы объяснить причину? –

+0

Правильный ответ. Почему люди подавали вниз? – Avijit

+0

Это то, что я спросил ** DOWN VOTER ** .. ** Пожалуйста, объясните причину вашего голосования ** –

0

Убедитесь в вашем коде, images.setVisibility()images должен быть экземпляр View. затем использовать метод View.getVisibility()

if(images.getVisibility() == View.GONE) 
Display(); 
+0

, если это вам поможет, тогда не забудьте принять ответ. –

0

Попробуйте это:

if(images.getVisibility()==View.GONE){ 
      Display(); 
      } 
Смежные вопросы