ListView和onItemClick创建透明片段
我有个问题。 我使用片段作为列表视图,并且在点击一个项目后,它应该用带有这个特定片段的片段(在这种情况下是事件)替换这个片段。 它可以工作(显示片段),但它是透明的,我可以在后台看到列表(即使它不可点击)。 我怎样才能摆脱这个怪异的背景? 用类似的方法替换其他片段工作正常,只是用“onItemClick”它做到了这一点。
这是我的代码:
lvEvents.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
Event currEvent = (Event) parent.getAdapter().getItem(position);
Log.e(TAG, currEvent.getName().toString());
replaceFragment(0, currEvent);
}
});
和方法:
private void replaceFragment(int code, Event event) {
FragmentTransaction ft = getActivity().getSupportFragmentManager().beginTransaction();
Bundle b = new Bundle();
b.putParcelable("event",event);
if(code==0){
EventViewFragment fragment = new EventViewFragment();
fragment.setArguments(b);
ft.replace(R.id.fragmentFrame, fragment, EventViewFragment.TAG);
}
ft.commit();
}
任何想法可能是错误的吗?
先谢谢你!
问候,
格热戈日
试试这个......即使我遇到了这个问题......我经历了几篇文章...写道,我们可以在主布局中使用白色背景......在我的情况下,在框架布局或线性布局中。 使用android:background =“@ color / white”
<LinearLayout
android:id="@+id/timetable_fragment"
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:background="@color/white"
android:layout_height="match_parent">
<android.support.v7.widget.RecyclerView
android:id="@+id/card_list"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</android.support.v7.widget.RecyclerView>
</LinearLayout>
你可以使用这个方法,然后..如果你想使用addtobackStack关键字堆栈片段,它会替换当前片段...使用替换关键字。
public void replaceFragment(Fragment fragment) {
getSupportFragmentManager()
.beginTransaction()
.replace(R.id.container, fragment)
.addToBackStack(null)
.commit();
}
链接地址: http://www.djcxy.com/p/30563.html
上一篇: ListView and onItemClick create transparent fragment
下一篇: ListView Items' background get mixed up when scrolling listView