Kei*_*rst 14 android background button drawable
我是Android和Java的新手,但我已经设法自学并在stackoverflow上找到大多数问题的答案而无需提问.到现在....
在这里,我有许多彩色按钮,当点击时,将颜色改变为一系列不同的颜色.
有许多按钮定义为例如:
<Button
android:id="@+id/button17"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@drawable/orange_button"
android:gravity="center"
android:onClick="onClick" />
Run Code Online (Sandbox Code Playgroud)
有人可以告诉我如何更改android:background使用代码将上面的示例更改为黄色,例如,单击按钮时.
在下面的代码中,clickedButton是我需要更改背景的按钮的ID.
public void onClick(View v) {
int id=v.getId();
String clickedButton = getResources().getResourceEntryName(id);
Change button to Yellow here??
// Temporary code below to check which button was pressed
// and convert its number to an integer to eventually access an array
final TextView tvGameTimer = (TextView) findViewById(R.id.tvGameTimer);
int buttonNumber = Integer.parseInt(clickedButton.substring(6,8));
tvGameTimer.setText("" + buttonNumber);
}
Run Code Online (Sandbox Code Playgroud)
我使用自定义按钮样式来定义按钮颜色:
res/drawable/yellow_button.xml
res/drawable/blue_button.xml
res/drawable/red_button.xml
res/drawable/orange_button.xml
res/drawable/green_button.xml
Run Code Online (Sandbox Code Playgroud)
现在我只需要弄清楚如何将按钮从橙色更改为黄色.然后,我可以添加逻辑以在应用需要时更改颜色.
非常感谢任何帮助.
Has*_*wed 25
我假设您发布的onClick方法与您尝试更改的背景相同.使用此代码.
v.setBackgroundResource(R.drawable.yellow_button);
Run Code Online (Sandbox Code Playgroud)
如果onClick不是同一个按钮的方法,请使用
findViewById(R.id.button17).setBackgroundResource(R.drawable.yellow_button);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
24798 次 |
| 最近记录: |