2016-06-24 6 views
0

どのようにしてアレイリストに追加されたフラグメントにタグを設定できますか? は、例えば配列リストのフラグメントにタグを設定する方法は?

public class MainActivity extends Appcompatactivity { 

public List<Fragment> fragmentList = new ArrayList<>(); 

} 

だから、私はリストにfragmetnsを追加していOnCreate関数は、ここでMyFragmentは、私がここで

fragmentList.add(MyFragment.newInstance("First Fragment") 
fragmentList.add(MyFragment.newInstance("second Fragment") 
fragmentList.add(MyFragment.newInstance("Third Fragment") 
fragmentList.add(MyFragment.newInstance("Fourth Fragment") 

を使用しています単一の断片である、どのように私は、このようなフラグメントにタグを追加することができますタグセットを参照してフラグメントを削除または追加することはできますか?

答えて

0

Listの代わりにMapを使用してください。 Mapでは、キー値構造として保存することができます。

Map<String, Fragment> fragments = new HashMap<>(); 

fragments.put("First Fragment", MyFragment.newInstance("First Fragment"); 

その後、fragmentsのキーとしてタグを使用できます。

fragments.get("First Fragment"); 

は、あなたがあなたの活動に追加された断片を制御したい場合は、それぞれ SupportFragmentManagerFragmentManagerの使用を検討してください。 Android documentationでさらに読む。

0

このためにModelクラスを作成できます。

private class FragmentList 
{ 
String tag; 
Fragment fragment; 
public String getTag() { 
return tag; 
} 

public String setTag(String tag) { 
this.tag=tag; 
} 

public String getFragment() { 
return fragment; 
} 

public String setFragment(Fragment tag) { 
this.tag=tag; 
} 

} 

public List<FragmentList> fragmentList = new ArrayList<>(); 

ツーIT-

public List<Fragment> fragmentList = new ArrayList<>(); 

を変更するには、どのように正確に私は上記のコードから、それをタグ付けしますあなたの:)

+0

のために働くのだろうか? – choman

+0

fragmentListにフラグメントを追加しているところはどこですか?FragmentList fl = new FragmentList(); fl.setFragment(新しいフラグメント()); fl.setTag( "First Fragment");それをリストfragmentList.add(fl)に追加します。 –

関連する問題