如何在Android中使用多个类

时间:2016-08-17 15:14:49

标签: java android function methods extends

您好如何在Android中使用多个类?即我在mainActivity Class中有一个按钮。我想在按下按钮时调用不同类的方法,就像显示Toast消息一样。 在此先感谢:)

当我运行此代码时,我的应用程序崩溃了。 这是我尝试过的。

package myplayground.dreamingreality.com.myplayground;

import android.app.Activity;
import android.widget.Toast;

/**
 * Created by Ruben on 16/08/10.
 */
public class OtherClass extends Activity{

    // Here is my other class

    public Toast mess()
    {

        Toast t =  null;
        t.makeText(getApplicationContext(),"test",Toast.LENGTH_LONG);
        return t;
    }
}

这是我的主要课程

package myplayground.dreamingreality.com.myplayground;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {

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

        Button btn = (Button)findViewById(R.id.btn);

        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                OtherClass oC = new OtherClass();
                oC.mess().show();
            }
        });

    }
}

2 个答案:

答案 0 :(得分:0)

您必须使用OnClickListener作为按钮。它看起来像这样:

Button myButton = (Button) findViewById(R.id.my_button);
myButton.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        myANotherClass.showToast("test text");
    }
});

有基础知识:https://developer.android.com/reference/android/widget/Button.html

答案 1 :(得分:0)

您不允许多重类继承。如果那是您要尝试做的。 显示简单的Toast并不需要extend多个类。

如果您要在另一个Activity或类中运行一个方法,则可以使该方法static,然后只需调用:

Button button = findViewById(R.id.my_button);
button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    YourClass.yourMethod();
    }
});

祝你好运!