2016-12-20 3 views
0

私はレイアウトでアクティビティを持っていて、レイアウトはListFragmentであるフラグメントで構成されています。私のListFragment派生クラスを含めると、そのレイアウトがフラグメントを保持するアクティビティ内にあるアダプタからListFragmentを設定したいと思います。 onActivityCreatedフラグメントにアダプタを渡す方法はありますか、またはonActivityCreatedメソッド内に新しいアダプタを作成する必要はありますか?ListFragment setListAdapter toカスタムクラスのアダプターがフラグメントクラスの外側に見つかりました

MainActivity.java - >アダプタインスタンスがここにある

activity_main.xml - >フラグメントは、こののViewGroupに位置しています

MyListFragment.java - >私はonActivityCreatedにsetListAdapter(myAdapter)を使用したいです

質問がわからない場合は教えてください。私はアンドロイドを初めて使っており、言い直しが必要かもしれません。

+0

質問に感謝しますが、フラグメントに属していないUIに触れないでください(もちろんメニューを除いて)... 'Activity'は' IProvideMeAnAdapter'インターフェースを実装します... – Selvin

答えて

0

活動のひとつのpublicメソッドを作成します。あなたのListFragmentで

public class MainActivity extends Activity{ 
    public YourAdapter getYourAdapter(){ 
    return adapterInstatnce; 
    } 
} 

を:

onActivityCreate()

final YourAdapter yourAdapter = ((MainActivity)getActivity()).getYourAdapter(); 
+0

これは良いアプローチではありません。 –

+0

他のオプションでも、そのためのインターフェースを作成することができます。 –

0

にあなたがフラグメント(使用に活動からわずかアダプタ "データ" を渡すことができますnewInstanceメソッド)、フラグメント内にアダプタを作成します。

関連する問題