接口回调的使用方法

在安卓开发之中通常需要使用页面的传值,而这种获得数值的途径通常可以通过接口回调和广播去完成,亦或使用快速开发框架eventbus等等。
今天介绍一下接口回调的使用方法。
第一步我们需要去定义一个接口去方便我们来进行回调获得数据,如下所示:

首先声明一个接口:

package com.interfacedemo;

/** * Created by Admin on 2015/12/13. */
public interface MyInterFace {
    public void getValue(String value);//获得回调值的接口方法
    public void toastValue(); //得知方法走到接口回调处的接口方法
}

第二步写一个类去用这个接口,并进行接口回调:

package com.interfacedemo;

/** * Created by Admin on 2015/12/13. */
public class InterFaceDemo {
    private MyInterFace myInterFace;//1.声明接口

    public void setMyInterFace(MyInterFace myInterFace) { //2.给接口设置set方法
        this.myInterFace = myInterFace;
    }
![这里写图片描述](http://img.blog.csdn.net/20151213181624203)
    public void getValueDemo(){
        String value="25";
        myInterFace.getValue(value);//自己方法执行完后最后到达回调处,传值为25
        myInterFace.toastValue();
    }
}

第三步也就是最后一步我们就可以进行数据的回调获得数值了:

package com.interfacedemo;

import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;
import android.widget.Toast;


public class MainActivity extends ActionBarActivity implements MyInterFace{
    private TextView textView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        textView= (TextView) findViewById(R.id.textView);
        InterFaceDemo interFaceDemo=new InterFaceDemo();//声明对象
        interFaceDemo.setMyInterFace(this);//给声明出的对象设置接口
        interFaceDemo.getValueDemo();//方法执行完后走到接口回调处便能将值传出
    }


    @Override
    public void getValue(String value) {
        textView.setText(value);
    }

    @Override
    public void toastValue() {
        Toast.makeText(getApplicationContext(),"看到值了",Toast.LENGTH_LONG).show();
    }
}

最后结果如图:接口回调的使用方法_第1张图片

你可能感兴趣的:(java,android)