我正在两个不同的类中编写代码.第一个运行IOIO线程,读取IOIO板的引脚状态; 当这个线程运行时,它将更新另一个类(Tab3Activity.java)上的几个TextView.
我调用了方法来更新UI,就像下面的代码一样.
Tab3Activity.setText(index,"string here");
Run Code Online (Sandbox Code Playgroud)
在setText()上述需求是静态的,否则它提供了一个犯错
无法从Tab3Activity类型对非静态方法setText(int,String)进行静态引用
问题出在Tab3Activity.java上.
public static void setText(final int idx,final String str) {
runOnUiThread(new Runnable() {
@Override
public void run() {
_textview[idx].setText(str);
}
});
}
Run Code Online (Sandbox Code Playgroud)
在runOnUiThread上面给出了一个ERR.
无法从类型Activity对静态方法runOnUiThread(Runnable)进行静态引用
这是用Globalioio.java编写的IOIO线程代码,我正在尝试更新Tab3Activity.java上的UI.看看这个Loop()方法.
class Looper extends BaseIOIOLooper {
@Override
public void setup() throws ConnectionLostException {
//setup DigitalOutputs, AnalogInputs etc here.
if(Tab2Activity.isOpened==true){
led_ = ioio_.openDigitalOutput(0, true);
pwm1S = ioio_.openPwmOutput(10, 100);
pwm1S.setDutyCycle((float)Tab2Activity.pwm1Speed.getProgress()/100);
pwm1Move = ioio_.openDigitalOutput(11, false);
pwm2S = ioio_.openPwmOutput(12, 100);
pwm2S.setDutyCycle((float)Tab2Activity.pwm2Speed.getProgress()/100);
pwm2Move = ioio_.openDigitalOutput(13, false);
pwmSrvo1 = …Run Code Online (Sandbox Code Playgroud) 我花了一天时间寻找正确的解决方案,但没有运气!问题是,例如,如何使用jel $ {bean.objectName}从jsp调用Java常量变量。最佳做法是什么?
我想知道这是否可行,对于Spring和jsp来说还是很新的。
常量类:
public class RNConstant {
public static final String HELLO_WORLD = "Hello World again!";
public static final String DEFAULT_LOCALE = "id_ID";
public static final String CONTEXT_PATH_SOAP_SR = "soap.sr";
}
Run Code Online (Sandbox Code Playgroud)
用EL调用jsp中的期望
<p>${RNConstant.HELLO_WORLD}</p>
Run Code Online (Sandbox Code Playgroud)
我可以使用scriptlet进行以下操作,但是如果它在weblogic中运行,则无法正常工作。这适用于apache tomcat v7或v8
<%@ page import="static id.co.telkom.common.RNConstant.*" %>
...
...
<%= HELLO_WORLD %>
Run Code Online (Sandbox Code Playgroud)
Weblogic中的错误
home.jsp:2:18: Syntax error on token "static", Identifier expected after this token
<%@ page import="static id.co.telkom.common.RNConstant.*" %>
^-------------------------------------^
home.jsp:11:19: HELLO_WORLD cannot be resolved
Hello world! <%=HELLO_WORLD%>
^--------^
Run Code Online (Sandbox Code Playgroud)
Java版本:1.6
pom.xml
spring
<version>1.0.0-BUILD-SNAPSHOT</version>
<properties> …Run Code Online (Sandbox Code Playgroud) 我真的不知道为什么for循环只循环一次.我认为逻辑是正确的,下面是代码.
// the list is named 'dataList'
for(int i = 0 ; i < dataList.Count; i ++)
{
string[] data = dataList[i].Split('+');
string[] wsno = data[0].Split(':');
if(wsno[1].Equals(tbWorkSheet.Text))
{
dataList.Remove(dataList[i]) <<<< remove string that has the same number
//data removed
//for loop ends up here idk why..
}
}
Run Code Online (Sandbox Code Playgroud)
dataList.Count将是列表的大小.
这种情况是这样的..我想删除存储在列表中的多个字符串,每个字符串都有其组号.因此,for循环将循环直到最后一个循环.但是当它找到一个与所需字符串具有相同编号的字符串时,它将执行if语句以删除它.