0
我有這個自定義視圖(相對佈局),其中一些其他視圖高度的基礎上,我試圖設置阿爾法和可見性。查看#setVisibility在API上不可見<17
我的alpha值根據視圖高度而變化,我檢查我的alpha是否爲< CONSTANT(如0.033)我將該視圖的可見性設置爲可見。一切正常上面的API 18 n,但由於某種原因,它不適用於較低的API。
代碼看起來是這樣的
if (val< 0.033){
setVisibility(GONE);
} else {
setVisibility(VISIBLE);
for (int i = getChildCount()- 1; i >= 0; i--) {
View v = getChildAt(i);
v.setVisibility(VISIBLE);
v.invalidate();
}
}
setAlpha(val);
invalidate();
我真的需要Visibility.GONE
和Visibility.VISIBLE
,以便爲我的觀點做正常運作。 Visibility.INVISIBLE
不符合我的要求。
我試圖在Logcat中打印出可見性,它在logcat中顯示VISIBLE,但是在實際的設備上它不是。
還有一件事,如果我沒有設置VISIBILITY GONE,即使在較低的API上,一切都可以正常工作。
所以主要問題是一旦可見性設置爲走了我不能使其可見再次
嘗試:
我想經歷所有的子視圖,使它們可見。 =不工作:(
for (int i = getChildCount()- 1; i >= 0; i--) { View v = getChildAt(i); v.setVisibility(VISIBLE); }
- 打過電話後無效我設置的知名度=不工作:(
- 試圖這樣做既讓孩子視圖中顯示和呼叫後失效。
我有我的哪個類擴展相對佈局的自定義視圖。所以呼籲someView.setVisibility是一樣調用setVisibility( GONE) – user3354265
或嘗試使用setVisiblity(View.GONE) –