我有2个活动,ActivityA
和ActivityB
,每个都有3个按钮。我在一台连接的设备上显示ActivityA
,在另一台连接的设备上显示ActivityB
。每个按钮都可以处于2种状态中的1种状态,但需要在两台设备上反映这些状态。我正在使用具有静态方法的util类来接收来自两个活动的按钮按下并将其发送到服务,并在服务回调时更新两个活动中按钮的状态。如何以静态和非静态方式使用枚举
现在,每个按钮都会在xml的相应活动中调用一个函数。例如Button1
的onClick
看起来是这样的:
android:onClick="button1Clicked"
这个函数(来自其相应的活性)UtilClass调用一个函数,看起来像这样:
public void button1Clicked(View view) {
UtilClass.button1Cliked();
}
我UtilClass
设置enum
所以我在从服务回调时知道要更新哪个按钮(在ActivityA
和ActivityB
中)。它看起来像这样:
public class UtilClass {
public static Button buttonPressed = WfdOperationButton.NONE;
public enum Button {
BUTTON1, BUTTON2, BUTTON3
}
public static void button1Cliked() {
buttonPressed = Button.BUTTON1;
//call asynctask to tell the service button1 was pushed by passing
//buttonPressed
}
public static void button2Cliked() {
buttonPressed = Button.BUTTON2;
//call asynctask to tell the service button2 was pushed by passing
//buttonPressed
}
...
我的问题是如何使用从UtilClass
相同enum
在ActivityA
和ActivityB
巩固UtilClass
3个buttonXClicked()
功能?在UtilClass
我尝试的改变如下:
public static void buttonCliked(Button inButton) {
buttonPressed = inButton;
//call asynctask to tell the service inButton was pushed by passing
//buttonPressed
}
,这并不会工作,因为我不能使用非静态enum
在ActivityA
或静电功能ActivityB
传中,但我需要的枚举。是非静态的,因为我需要在UtilClass
中使用它。
我是Android新手,所以如果我做了其他任何错误,我会很感激,如果你指出。
谢谢!
嗨,这个问题仍然标记为开放。请选择答案或必要时关闭...谢谢。 – declension