我有一个简单的if语句的问题。我想借助传入数据修改2 ImageView的可见性。出于某种原因,数据仅影响if语句一次。声明在哪里假设是不断更新的?如果语句只检查一次?
这是我的onCreate()
if (TCPClient.Led.equals(High)){
Inum1.setVisibility(ImageView.GONE);
Inum2.setVisibility(ImageView.VISIBLE);
}
if (TCPClient.Led.equals(Low)){
Inum1.setVisibility(ImageView.VISIBLE);
Inum2.setVisibility(ImageView.GONE);
}
我从另一个类获得里面的数据:
while (mRun) {
serverMessage = in.readLine();
if (serverMessage != null && mMessageListener != null) {
//call the method messageReceived from MyActivity class
mMessageListener.messageReceived(serverMessage);
Log.e("Listenner",serverMessage);
TCPClient.Led = new String(serverMessage);
}
serverMessage = null;
}
感谢您的帮助。
要确定这么多的代码很复杂,第二块代码是返回到前一个活动或创建一个新活动的活动?如果是第一种情况,你应该把它放在onRestart()方法上,因为它不会再通过onCreate()。如果它不起作用,请输入更多信息。 – Rigotti
我没有把我所有的代码放在里面,因为它真的很长,只有这个部分对我的问题很重要(我相信)。第一个代码在我的活动“domotique”中,第二个代码块在“TCPClient”类中。 – user2047596