Java 如何在运行时中将不同的视图状态与不同的可绘制项关联
如何放置两个可绘制项目,一个关联点击查看其他状态未点击!! java代码!!因为在我的程序中,我动态创建了新的视图,其中一个视图在默认状态下具有不同的颜色(当android:state_pressed=“false”) 与此完全相同:但在java代码中:Java 如何在运行时中将不同的视图状态与不同的可绘制项关联,java,android,Java,Android,如何放置两个可绘制项目,一个关联点击查看其他状态未点击!! java代码!!因为在我的程序中,我动态创建了新的视图,其中一个视图在默认状态下具有不同的颜色(当android:state_pressed=“false”) 与此完全相同:但在java代码中: <selector xmlns:android="http://schemas.android.com/apk/res/android"> <!-- PRESSED --> <item android:s
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- PRESSED -->
<item android:state_pressed="true">
<shape android:shape="rectangle">
<stroke android:color="#286DCC" android:width="2dp"/>
<corners android:bottomLeftRadius="5dp" android:bottomRightRadius="10dp" android:topLeftRadius="10dp" android:topRightRadius="10dp" />
<!-- Gradient Bg for listrow -->
<gradient android:startColor="#f1f1f2" android:centerColor="#e7e7e8"
android:endColor="#cfcfcf" android:angle="270" />
</shape>
</item>
<!-- DEFAULT -->
<item >
<shape android:shape="rectangle" >
<corners android:bottomLeftRadius="10dp" android:bottomRightRadius="10dp"
android:topLeftRadius="10dp" android:topRightRadius="10dp" />
<!-- Gradient Bg for listrow -->
<gradient **android:startColor="#F75522" android:centerColor="#F75522"**
**android:endColor="#F75522"** android:angle="270" />
</shape>
</item>
</selector>
我不知道如何实现android:startColor
,centerColor
,endColor
来动态更改它
为所有人着想。将onClickListener设置为按钮,并在onClick中更改按钮的背景
public void onClick(View v) {
if(v == ButtonName) {
ButtonName.setImageResource(R.drawable.ImageName);
}
}
我有两种颜色的状态项,第一种颜色仅在单击视图时显示为效果,第二种颜色为默认颜色,在单击视图之前和之后显示,但在单击时不显示。
public void onClick(View v) {
if(v == ButtonName) {
ButtonName.setImageResource(R.drawable.ImageName);
}
}