2016-07-30 10 views
0

マイアダプタクラス:アンドロイド断片および活性:異なるインタフェース、同じインスタンス

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. 

どういうわけか、今のところランダムに動作していますか?私はそれを得ていないが、私はそれが修正されたと思う。私はまだ何も変えていないが、コードはうまく始める。

+0

'FragmentActivity'というクラスがありますか?エラーを引き起こす行( 'adaptor.setCheckFavourite(this.getActivity());')を呼び出す前に、 'Log.d(" TAG "、getActivity()。getClass()。getNameの' LogCat'出力は何ですか? ()); '? – PPartisan

答えて

1

たぶん、あなただけのコードは今仕事を始め

adaptor.setCheckFavourite((Adaptor.CheckFavourite)this.getActivity()); 
+0

それは動作しません:( – user3117628

0

キャストを追加する必要があります。私は何も変えなかったが、それは働いている。かなりワイアード、しかし、これは結局良い質問ではなかったと思います。私の言い訳。

関連する問題