我有一个带有许多内部方法的类。这些方法被其他许多类调用。代码示例为
public class Main extends Activity{
public Main(){}
public static String method1(String name)
{
String path="path";
name.setOnclickListener(new View.onClickListener(){
@Override
public void onClick(View v) {
path="newPath"; //this giving me error
}
});
return path;
}
}
但是我不能给“ path”赋新值。给我一个错误,无法将“ String path”设置为“ final”。但是,当我将其设置为“最终”变量时,仍然给我一个错误,再次删除了“最终”变量。
我的问题是“如何从onClickListener方法获取新数据并将其返回”。
对不起,我的英语写作能力很差。
答案 0 :(得分:0)
您可以创建包装对象来存储更改的数据:
static class Wrapper {
public String path = "path";
}
public static String method1(String name) {
final Wrapper wrapper = new Wrapper();
name.setOnclickListener(new View.onClickListener(){
@Override
public void onClick(View v) {
wrapper.path = "newPath";
}
});
return path;
}