Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/217.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java setOnClickListener中的变量可见性_Java_Android_Visibility_Android Alertdialog - Fatal编程技术网

Java setOnClickListener中的变量可见性

Java setOnClickListener中的变量可见性,java,android,visibility,android-alertdialog,Java,Android,Visibility,Android Alertdialog,在按钮a中进行处理时,我想禁用按钮B public class GoJump extends Activity{ Button answerA, answerB; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.jump); answerA = (Button) findViewById(R.id.button_A);

在按钮a中进行处理时,我想禁用按钮B

public class GoJump extends Activity{
    Button answerA, answerB;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.jump);
answerA = (Button) findViewById(R.id.button_A);
answerB = (Button) findViewById(R.id.button_B);

    answerA.setOnClickListener(new OnClickListener() 
    {
                public void onClick(View v) 
                   {
                     // Do something
                     // Disable button B
                   }
    });
问题是按钮B在按钮A处理中不可见。我必须另一次申报才能禁用它。 还有其他方法吗?使变量在所有类中可见。
谢谢。

在onCreate()之前初始化变量


您只需
将enabled
设置为false。读这个


将其作为实例和最终变量,而不是局部变量。更多的代码会有帮助。@Nambari:我只想在点击按钮A时禁用按钮B。就这样;)。有代码吗?如果没有看到您的代码(您如何声明按钮B),很难给出一个示例。请提供更多代码。@Nambari:请查看编辑过的文章。b在文章中不可见。对不起!这应该是答案。更新了答案。那真是个笑话!这让我发疯!我刚刚重新启动它,知道它看到了answerB变量!我知道这是不符合逻辑的,但我必须发布一个问题来确定。谢谢你,伙计;)@很高兴知道。享受编码的乐趣。@Andronienn:没有什么比请求许可更重要的了。你想要谁。是的,是的,现在可以了。原因:日食!谢谢你,伙计:)。
// Before onCreate
private Button b, b2;

@Override
public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    b = (Button) findViewById(R.id.button);
    b2 = (Button) findViewById(R.id.button2);

    b.setOnClickListener(new OnClickListener() 
    {
            public void onClick(View v) 
            {
                b2.setEnabled(false);
            }
    });
{
          public void onClick(View v) 
                   {
                     answerB.setEnabled(false);
                   }