我想仿照网上用接口实现service和activity之间的交互,但是总是报错,请帮我看一下://自定义的接口
public interface MyInter{     public int getCurPercent();
}public class TestService extends Service implements MyInter {    
private int i;
MyBinder binder = new MyBinder(); @Override
public IBinder onBind(Intent intent) {
Log.i("tag", "onbind ");
return binder;  //返回内部类实例
} @Override
public int getCurPercent() {
return i;
} public class MyBinder extends Binder implements MyInter { @Override
public int getCurPercent() {
return i;
} } @Override
public void onCreate() {
super.onCreate();
L.i("tag", "oncreate ");
new Thread(new Runnable() { @Override
public void run() {
while (i < 100) {
try {
Thread.sleep(800);
} catch (InterruptedException e) {
e.printStackTrace();
}
i++;
}
}
}).start();
}}public class ZclientActivity extends Activity {
private MyInter myInter;
private Button btn;
private TextView tv; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.zzz);
btn = (Button) findViewById(R.id.btn);
tv = (TextView) findViewById(R.id.text);
Intent intent = new Intent("com.test.test");
ServiceConnection conn = new ServiceConnection() { @Override
public void onServiceDisconnected(ComponentName name) {
myInter = null;
} @Override
public void onServiceConnected(ComponentName name, IBinder service) {
myInter =  (MyInter) service;      //总是转型错误。
}
}; bindService(intent, conn, Service.BIND_AUTO_CREATE);
btn.setOnClickListener(new OnClickListener() { @Override
public void onClick(View v) {
tv.setText((myInter).getCurPercent() + "%");
}
});
}}
如代码所示  在绑定service的时候 获取的IBinder无法转型成接口MyInter, 转型成MyBinder 也会报classcast异常,请问哪里写错了?