マイアダプタクラス:アンドロイド断片および活性:異なるインタフェース、同じインスタンス
private CheckFavourite checkFavourite;
private ItemCLickCallback itemCLickCallback;
public void setCheckFavourite(final CheckFavourite checkFavourite){
this.checkFavourite = checkFavourite;
}
public void setItemCLickCallback(final ItemCLickCallback itemCLickCallback){
this.itemCLickCallback = itemCLickCallback;
}
public interface ItemCLickCallback {
void onItemClick(int p);
void onSecItemClick(int p);
}
boolean isFavourite = checkFavourite.getFavourite(winkel);
public interface CheckFavourite{
boolean getFavourite(Winkel winkel);
}
フラグメント:
public class Overview extends Fragment implements Adaptor.ItemCLickCallback{
adaptor = new Adaptor(mijnwinkels, this.getActivity());
adaptor.setItemCLickCallback(this);
// Code is incomplete, but this works.
adaptor.setCheckFavourite(this.getActivity());
// This doesn't work.
}
アクティビティー:
public class SecondActivity extends AppCompatActivity implements Adaptor.CheckFavourite{
@Override
public boolean getFavourite(Winkel winkel){
boolean isFavourite = false;
MyDBHandler dbHandler = new MyDBHandler(this,null,null,1);
isFavourite = dbHandler.isFavourite(user,winkel);
return isFavourite;
}
}
マイ断片は、最初のインターフェイスを実装し私のアダプタは私の断片に作られます。私のアクティビティは第2のインターフェイスを実装しています。なぜなら、私は自分のアクティビティにあるデータを必要としているからです。しかし、それは同じアダプタです。これをどのように機能させることができますか?これは私のエラーです:
Error:(60, 51) error: incompatible types: FragmentActivity cannot be converted to CheckFavourite.
どういうわけか、今のところランダムに動作していますか?私はそれを得ていないが、私はそれが修正されたと思う。私はまだ何も変えていないが、コードはうまく始める。
'FragmentActivity'というクラスがありますか?エラーを引き起こす行( 'adaptor.setCheckFavourite(this.getActivity());')を呼び出す前に、 'Log.d(" TAG "、getActivity()。getClass()。getNameの' LogCat'出力は何ですか? ()); '? – PPartisan