Android interface接口传值

时间:2022-11-21 20:26:16

现在假定有两个类AClass.class和BActivity.class, 将A中的值传给B调用

1、AClass.class中的代码如下

public class AClass implements {

    // 获取接口对象
     private OnAClassListener aClassListener;

    //构造方法
    private AClass() {

    }

    //发送数据
     public void sends(){
     if (aClassListener!= null) {
              aClassListener.OnAClass("在这里传值");
               }
    }

      //用于B绑定接口
      public void setOnAClass(OnAClassListener mListener) {
          this.aClassListener = mListener;
	}


      // 定义接口
      public interface OnAClassListener {
          void OnAClass(String str);
      }

}        

  

  

2、BActivity.class中的代码如下

public class BActivity extends AppCompatActivity implements A.OnAClassListener {
             @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
     AClass a = new AClass();
        //绑定接口
        a.setOnAClass(this);
     a.sends(); //调用数据发送
  }
             @Override 
   public void OnAClass(String str) {
        Log.e("BActivity", "传入的字符串:" + str);
   } 
}