Android 方法声明期间的错误

Android 方法声明期间的错误,android,Android,有人能告诉我下面显示的程序是否有任何错误吗 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); int addAToB(int a, int b) { int answer = a + b; retur

有人能告诉我下面显示的程序是否有任何错误吗

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    int addAToB(int a, int b)
    {  
        int answer = a + b;  
        return answer; 
    } 
}
我是一个Android应用程序开发的完全初学者,并且在相当长的一段时间内一直面临着这个问题。每当我使用任何方法时,Android Studio都会显示错误。另一个例子是这个

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Toast.makeText(this, "Can you see me", Toast.LENGTH_SHORT).show();
    public void topClick (View v){
        Toast.makeText(this, "Top button clicked", Toast.LENGTH_SHORT).show();

    }
    public void bottomClick (View v){
        Toast.makeText(this, "Bottom button clicked", Toast.LENGTH_SHORT).show();
    }
}
这是一个应用程序,其中创建了两个按钮,每当用户单击顶部按钮时,就会显示“top button clicked”(顶部按钮已单击)消息,每当用户单击底部按钮时,就会显示“bottom button clicked”(底部按钮已单击)消息


我已经重新安装了两次Android Studio,希望它能解决这个问题,但它没有。将topClick和bottomClick功能移到外部。
您不应该在另一个函数中声明命名函数。

将topClick和bottomClick函数移到外部。
您不应该在另一个函数中声明一个命名函数。

您是在一个void中放置一个void,这不应该像Java中那样

尝试以下结构:

protected void onCreate (Bundle savedInstanceState) {
    //some code
}

public void topClick(View v) {
    //some code
}

public void bottomClick(View v) {
    //some code
}
看到这个问题,您不能在Java中的方法中放置方法


编辑:对不起,没有看到其他人已经快了。如果另一个答案被接受,我将删除它。

您正在将一个空放在一个空中,这不应该像Java中那样

尝试以下结构:

protected void onCreate (Bundle savedInstanceState) {
    //some code
}

public void topClick(View v) {
    //some code
}

public void bottomClick(View v) {
    //some code
}
看到这个问题,您不能在Java中的方法中放置方法


编辑:对不起,没有看到其他人已经快了。如果另一个答案被接受,我将删除它。

您不能在另一个方法中声明方法:

将代码更改为:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

}
int addAToB(int a, int b)
    {  
        int answer = a + b;  
        return answer; 
    }
同样对于其他代码,您初始化了方法内部的按钮单击事件,这是错误的。进行更改后,您的代码应如下所示:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Toast.makeText(this, "Can you see me", Toast.LENGTH_SHORT).show();

}

public void topClick (View v){
        Toast.makeText(this, "Top button clicked", Toast.LENGTH_SHORT).show();

    }
    public void bottomClick (View v){
        Toast.makeText(this, "Bottom button clicked", Toast.LENGTH_SHORT).show();


    }

这很好用。祝你好运

不能在另一个方法中声明方法:

将代码更改为:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

}
int addAToB(int a, int b)
    {  
        int answer = a + b;  
        return answer; 
    }
同样对于其他代码,您初始化了方法内部的按钮单击事件,这是错误的。进行更改后,您的代码应如下所示:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Toast.makeText(this, "Can you see me", Toast.LENGTH_SHORT).show();

}

public void topClick (View v){
        Toast.makeText(this, "Top button clicked", Toast.LENGTH_SHORT).show();

    }
    public void bottomClick (View v){
        Toast.makeText(this, "Bottom button clicked", Toast.LENGTH_SHORT).show();


    }

这很好用。祝你好运

您是指受外部保护的void onCreate()函数对吗?您是指受外部保护的void onCreate()函数对吗?您不能在java中声明方法而不是方法您不能在java中声明方法而不是方法