gpt4 book ai didi

Android 按钮状态以编程方式在 Java 中(不是 XML)

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:58:25 26 4
gpt4 key购买 nike

如何为“state_pressed”定义 Android 按钮图像Java 中的“android:state_focused”?

例如,对于来自

http://developer.android.com/reference/android/widget/ImageButton.html

 <?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@drawable/button_pressed" /> <!-- pressed -->
<item android:state_focused="true"
android:drawable="@drawable/button_focused" /> <!-- focused -->
<item android:drawable="@drawable/button_normal" /> <!-- default -->
</selector>

最佳答案

只需使用StateListDrawable的addState方法

StateListDrawable stateListDrawable = new StateListDrawable();
stateListDrawable.addState(new int[] {android.R.attr.state_pressed},
getResources().getDrawable(R.drawable.phone));

你可以使用下面的常量作为这个方法的第一个参数

android.R.attr.state_accelerated
android.R.attr.state_activated
android.R.attr.state_active
android.R.attr.state_drag_can_accept
android.R.attr.state_drag_hovered
android.R.attr.state_enabled
android.R.attr.state_first
android.R.attr.state_focused
android.R.attr.state_hovered
android.R.attr.state_last
android.R.attr.state_middle
android.R.attr.state_pressed
android.R.attr.state_selected
android.R.attr.state_single
android.R.attr.state_window_focused

关于Android 按钮状态以编程方式在 Java 中(不是 XML),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8411418/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com