我有一个带有ListView的FragmentActivity(填入onCreate())。现在我想当用户点击e ListView元素时,自定义片段出现在当前FragmentActivity上并“隐藏”所有FragmentActivity内容(在本例中为ListView)。它可以这样做,或者我还需要为show ListView创建一个片段?
public class MyActivity extends FragmentActivity {
private ArrayList<Object> list;
private FragmentManager fragmentManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mylaytou);
list = PrincipalActivity.getMatchesList();
ListView list = (ListView) this
.findViewById(R.id.listView);
ArrayAdapter<Object> adapter = new ArrayAdapter<Object>(this,
android.R.layout.simple_list_item_1, list);
list.setAdapter(adapter);
list.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
fragmentManager = MyActivity.this
.getSupportFragmentManager();
MyFragment fragment = new MyFragment((Object) arg0
.getItemAtPosition(arg2));
FragmentTransaction fragmentTransaction = fragmentManager
.beginTransaction();
fragmentManager.beginTransaction()
.add(R.id.ViewGroup, fragment).commit();
}
});
}
答案 0 :(得分:0)
如果您只想隐藏列表视图,那么最好遵循single pane方法。否则最好开始一项全新的活动。
按照第一种方法,您必须创建2个片段,然后使用FragmentTransaction将replace旧片段与新片段一起使用。