Java 如何在android中创建类似DropBox的文件夹列表?

Java 如何在android中创建类似DropBox的文件夹列表?,java,android,listview,android-activity,fragment,Java,Android,Listview,Android Activity,Fragment,我想在android的listview中显示文件夹,但我必须构建一些不是静态预制的片段,因为我不知道文件夹树会是什么样子。我想创建类似dropbox的东西。当文件夹内容更改时,它们如何显示文件夹内容列表。如何在运行时使用listview生成这些片段?当然,并非应用程序的所有内容都必须是静态的。在Android上,实现“DropBox文件夹内容”类型表示的一种方法是使用ListView 基本上,您需要做的是创建ListView的实例(通过将其添加到布局或以编程方式添加到视图组),并为其设置有效的适

我想在android的listview中显示文件夹,但我必须构建一些不是静态预制的片段,因为我不知道文件夹树会是什么样子。我想创建类似dropbox的东西。当文件夹内容更改时,它们如何显示文件夹内容列表。如何在运行时使用listview生成这些片段?

当然,并非应用程序的所有内容都必须是静态的。在Android上,实现“DropBox文件夹内容”类型表示的一种方法是使用ListView

基本上,您需要做的是创建ListView的实例(通过将其添加到布局或以编程方式添加到视图组),并为其设置有效的适配器

适配器负责处理“可变”数据

在这里可以找到一个漂亮而全面的教程

编辑:

要在运行时创建片段,请在收到onItemClick事件后,尝试以下方法:

  • 创建活动并将此视图包含在其布局中:

    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/fragment_container"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@+id/toolbar"
        android:theme="@style/Style" />;
    
  • 在onCreate()中调用此方法,并在需要显示新片段时调用


  • 谢谢但我该怎么做呢。我知道如何使用自定义listview和适配器创建片段,该适配器正在处理listview的内容。。但是我可以创建一个片段并简单地将数据更改为它,然后在单击listitem时在不同的数据时再次调用它吗?好的,我明白了。我建议您将初始片段放在ViewPager中,并在onItemClick()事件之后将其更改为新片段,同时将以前使用的片段保留在历史堆栈中。此外,我不建议使用嵌套片段。我将用一个有用的代码片段更新我的答案,不完全是一个ViewPager,但是一个FrameLayout示例将非常好。非常感谢您的帮助和时间:)
    instantiateNewFolder(NewFolderDescriptor descriptor){
        FragmentManager fragmentManager = getSupportFragmentManager(); // or getFragmentManager()
        FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
        fragmentTransaction.setCustomAnimations(R.anim.abc_fade_in, R.anim.abc_fade_out);
        fragmentTransaction.replace(R.id.fragment_container, NewFolderFragment.instantiateNew(descriptor));
        fragmentTransaction.commit();
    }