Android中interface使用详解

一、前言

接口是我们在Android开发中经常用到的,通过接口可以简化我们在主activity的代码量。在下载时候的进度回调,在adapter与activity之间的回调,在javabean和fragment以及fragment之间的回调等等,回调的目的主要有两个:其一是传递数据,其二是保持数据的同步更新。常用的有两种形式,一是使用内部类的形式,得到接口的子类对象,另一种是直接实现定义的接口。

二、实现代码

1、首先定义一个接口,接口中有要实现的方法

public interface MainInterface {
    void setMyText(String msg);
}

2、写一个主activity类,activity中调用class的方法,class执行具体方法成功后,回调到主activity

public class MainInterfaceActivity extends BaseActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main_interface_layout);
        initView();
    }
    private void initView(){
        Button interface_button=findViewById(R.id.interface_button);
        TextView interface_textview=findViewById(R.id.interface_textview);
        interface_button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                InterfaceHelpActivity.showMsg(MainInterfaceActivity.this,new MainInterface() {
                    @Override
                    public void setMyText(String msg) {
                        interface_textview.setText(msg);
                    }
                });
            }
        });
    }
}

3、写一个class类,具体实现方法

public class InterfaceHelpActivity {
    public static void showMsg(Context context,MainInterface inter){
        //可写耗时的读取网络数据方法。
        new Handler().postDelayed(new Runnable() {
            @Override
            public void run() {
                //通过接口回调到主activity中的setMyText方法。
                inter.setMyText("显示接口回调内容");
            }
        }, 2000);

    }

}

4、xml编写



    
    

三、总结

接口用处很多,自己梳理一遍更易于理解和使用,总的来说就是activity调用实现类中方法,然后给类传递当前实现的接口,类执行完代码后会回调到activity中。

你可能感兴趣的:(Android)