1.定义interface
package com.example.callbacktest;
public interface OnCallback {
void ok(String s);
void no(String s);
}
2.实现interface
package com.example.callbacktest;
public class ImplCallback {
public OnCallback callback;
public ImplCallback(OnCallback callback) {
this.callback = callback;
}
public void getInfo(int i) {
if (i == 1) {
callback.ok("你输入的1");
}else{
callback.no("你输入的不是1");
}
}
}
3.继承接口,调用步骤2中的方法,在此类中重写
package com.example.callbacktest;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity implements OnCallback {
TextView textView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = (TextView) findViewById(R.id.t);
final ImplCallback implCallback = new ImplCallback(this);
textView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
implCallback.getInfo(R.id.t);
}
});
}
@Override
public void ok(String s) {
Log.d("s", s);
}
@Override
public void no(String s) {
Log.d("s", s);
}
}