0

我遇到问题的片段是使用 Cardslib 库中的 CardListView 。我将片段动态添加到容器中,一切都按预期工作,除了在与之交互时没有响应。这意味着它不会滚动,我无法按下任何卡片以及与问题相关的任何其他内容。

在 MainActivity 中将片段添加到容器:

@Override
protected void onCreate(Bundle savedInstanceState) {

    // Code here...

    NoteFragment nf = new NoteFragment();
    // nf.setArguments(getIntent().getExtras());

    FragmentTransaction tx = getFragmentManager().beginTransaction();
    tx.add(R.id.container, nf);
    tx.commit();
}

在 MainActivity 中使用 Navigation Drawer 时替换容器片段。选择的默认大小写是 NoteFragment。

@Override
public void onNavigationDrawerItemSelected(int position) {
    // update the main content by replacing fragments
    Fragment fragment = null;
    switch(position) {
        case 0:
            onSectionAttached(0);
            fragment = new NoteFragment();
            break;
        case 1:
            onSectionAttached(1);
            fragment = new ArchiveFragment();
            break;
        case 2:
            onSectionAttached(2);
            fragment = new TrashFragment();
            break;
    }

    FragmentTransaction tx = getFragmentManager().beginTransaction();
    tx.replace(R.id.container, fragment);
    tx.commit();
}

NoteFragment 返回膨胀的布局:

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

    // CardListView Code Here...

    // Inflate the layout for this fragment
    return inflater.inflate(R.layout.fragment_note, container, false);
}

容器 XML (activity_main.xml):

<android.support.v4.widget.DrawerLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <!-- As the main content view, the view below consumes the entire
         space available using match_parent in both dimensions. -->
    <FrameLayout
        android:id="@+id/container"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <!-- The drawer is given a fixed width in dp and extends the full height of
         the container. -->
    <fragment android:id="@+id/navigation_drawer"
        android:layout_width="@dimen/navigation_drawer_width"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:name="com.example.NavigationDrawerFragment"
        tools:layout="@layout/fragment_navigation_drawer" />

</android.support.v4.widget.DrawerLayout>

片段 XML (fragment_note.xml):

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".fragments.NoteFragment">

    <it.gmariotti.cardslib.library.view.CardListView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingTop="5dp"
        android:id="@+id/CardList"/>

</FrameLayout>

任何帮助表示赞赏。

4

1 回答 1

3

我修好了它!onCreateView() 中的 Cardslib 代码段已移至 onStart(),并修复了无响应问题。

于 2014-07-17T16:46:16.653 回答