在我的android应用程序内部活动中,我定义了一个这样的界面:
public interface sideFilterInterface
{
public void changeFilters(int layoutId);
}
内部活动我像这样使用这个界面
@Override
public void onCreate(Bundle savedInstanceState) {
mCallback = (sideFilterInterface) this;
mCallback.changeFilters(R.layout.filter_details);
}
我在另一个片段中实现此接口。当我尝试使用此代码时,它会让我在此处投射mCallback = (sideFilterInterface) this;
如何做到这一点。难道我做错了什么。需要帮忙。谢谢。
答案 0 :(得分:0)
如果您没有在活动中实现监听器,那么主要的是您正在尝试将您的Activity转换为监听器。
如果通过接口调用public void changeFilters(int layoutId)
,则代码将不会执行,因为接口中的方法是抽象的。您需要在活动中实现侦听器,然后在那里执行代码。类似的东西:
public class YourActivity extends Activity implements sideFilterInterface{
@Override
public void onCreate(Bundle savedInstanceState) {
//some code
this.changeFilters(R.layout.filter_details);
}
@Override
public void changeFilters(int layoutId) {
//Implement here
}
}