ImageView有两种方法相关的方法:setAlpha和setImageAlpha.前者从API级别1开始可用,但从级别16开始不推荐使用.后者从16级开始可用.还有另一个setAlpha方法,来自View类,这是在API级别11中引入的.
ImageView#setAlpha和ImageView#setImageAlpha之间的区别仅在于命名吗?有任何行为差异吗?View#setAlpha和ImageView#setAlpha之间的关系是什么?
我有这个代码,适用于自API 14以来的每个版本,但在Android 5.0(Lollipop)上运行不正常.
下面是我想要按钮出现的方式.

点击button1
buttonArrivals.getBackground().setAlpha(180);
buttonDepartures.getBackground().setAlpha(255);
Run Code Online (Sandbox Code Playgroud)

点击button2
buttonArrivals.getBackground().setAlpha(255);
buttonDepartures.getBackground().setAlpha(180);
Run Code Online (Sandbox Code Playgroud)
在Lollipop版本上,按钮显示的是相同的Alpha,但我从未设置相同的alpha.我只是使用上面的代码.
更新24/11/2014
这是按钮的xml(AutoResizeButton extends Button)
br.com.timo.gru.util.AutoResizeButton
android:id="@+id/buttonArrivals"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="2"
android:background="#00abbd"
android:drawableLeft="@drawable/icon_aviao_desemb"
android:drawablePadding="-5dp"
android:drawableStart="@drawable/icon_aviao_desemb"
android:gravity="center"
android:paddingEnd="0dp"
android:paddingLeft="2dp"
android:paddingRight="0dp"
android:text="@string/chegadas"
android:textColor="@android:color/white"
br.com.timo.gru.util.AutoResizeButton
android:id="@+id/buttonPartidas"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="2"
android:background="#00abbd"
android:drawableLeft="@drawable/icon_aviao_partida"
android:drawablePadding="-5dp"
android:drawableStart="@drawable/icon_aviao_partida"
android:ellipsize="end"
android:gravity="center"
android:text="@string/partidas"
android:textColor="@android:color/white"
Run Code Online (Sandbox Code Playgroud)