如何将现有代码分配给java类中的new button?

如何将现有代码分配给java类中的new button?,java,android,Java,Android,我的MainActivity类中有一个随机笑话代码,基本上是告诉我的应用程序在每次单击按钮时都显示一个字符串。在笑话视图中,我试图创建一个函数来做同样的事情,除了笑话视图中的一个按钮。因此,当用户想要另一个笑话时,他们不必返回主页。相反,他们只需单击“笑话”视图上的按钮即可。我应该在“onClicK”之后添加什么来告诉应用程序执行与我的随机笑话代码相同的功能(在同一活动类中)。谢谢 到目前为止,我的代码是: @Override protected void onCreate(Bundle s

我的MainActivity类中有一个随机笑话代码,基本上是告诉我的应用程序在每次单击按钮时都显示一个字符串。在笑话视图中,我试图创建一个函数来做同样的事情,除了笑话视图中的一个按钮。因此,当用户想要另一个笑话时,他们不必返回主页。相反,他们只需单击“笑话”视图上的按钮即可。我应该在“onClicK”之后添加什么来告诉应用程序执行与我的随机笑话代码相同的功能(在同一活动类中)。谢谢

到目前为止,我的代码是:

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

    setupJokeButton();


}

private void setupJokeButton() {
    // TODO Auto-generated method stub
    Button JokeButton = (Button) findViewById(R.id.nextjoke);

    JokeButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub



        }
    });
我的随机笑话代码如下所示:

public void randomJoke (View view) {
    Intent intent = new Intent(this, DisplayMessageActivity.class); 
    Random rand = new Random();
    int lowerBound = 1, upperBound = 83; //HERE IS WHERE YOU ADD THE HIGHEST NUMBER OF JOKES THERE IS
    int randomNumber = rand.nextInt(upperBound - lowerBound + 1) + lowerBound;
    String jokeNumber = "joke" + String.valueOf(randomNumber);
    String mess = getResources().getString(getStringResourcePath(getApplicationContext(),jokeNumber));
    //String jokeNumber = "joke" + String.valueOf(iteration);
    //iteration += 1;
    //String mess = getResources().getString(getStringResourcePath(getApplicationContext(), jokeNumber));
    intent.putExtra(EXTRA_MESSAGE, mess);
    startActivity(intent);

如果我知道你想要什么,你可以这么做

@Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        randomJoke(v);
由于
randomJoke()
只需将
视图
作为其参数,因此您只需调用该方法并发送单击的
视图
按钮