//初始化变量
private static String ans;
//在onCreate中调用方法
loadLayout ();
opA.setOnClickListener (new View.OnClickListener () {
@Override
public void onClick(View v) {
if (ans == "A")
{
checkRight.setVisibility (View.VISIBLE);
}
}
private void loadLayout() {
mechSubject.get ()
.addOnSuccessListener (new OnSuccessListener<DocumentSnapshot> () {
@Override
public void onSuccess(DocumentSnapshot documentSnapshot) {
if (documentSnapshot.exists ())
{ ans = A;}
}
因此,当我调用该方法时,它应该分配变量ans = A,然后单击opA时,它应该执行正确的代码。但是ans的值仍然为空。我尝试不将ans初始化为静态,但仍然是同样的问题。我应该在这里使用setter和getter吗?但是如何?当我在方法内部设置值,然后在外部调用它时,也不起作用。我该怎么办?