java - ClassCastException 将标题添加到 ListView (ListFragment onCreateView)

标签 java android fragment

我有一个带有自定义适配器的 ListView ,它渲染并工作正常。当我尝试向 ListView 添加标题时,应用程序崩溃了。我的标题是一个单独的布局 xml 文件,它有一个相对布局,有两个微调器,一左一右。

我膨胀 View ,操作旋转器添加数据,将其添加到 ListView ,并且应用程序在创建 View 时不再工作,它崩溃了。

Java.lang.ClassCastException:android.widget.FrameLayout$LayoutParams 无法转换为 android.widget.AbsListView$LayoutParams。

我正在使用扩展列表 fragment 的 fragment ,并且 xml 布局中只有一个列表。用于添加标题的代码位于 onCreateView 调用中,

        View view = inflater.inflate(R.layout.listview_layout, container, false);

        View header = (View)inflater.inflate(R.layout.header_layout, container, false);
        Spinner spinner1 = (Spinner)header.findViewById( R.id.spinner1 );

        //add pre-defined per page information
        ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
                getActivity(),
                R.array.header_layout_spinner1, 
                android.R.layout.simple_spinner_item
        );
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        spinner1.setAdapter( adapter );

        Integer values[] = new Integer[100];
        for(int i=1;i<=100;i++)
        {
            pages[i-1] = i;
        }

        Spinner spinner2 = (Spinner)header.findViewById(R.id.spinner2); 
        ArrayAdapter<Integer> adapter2 = new ArrayAdapter<Integer>(getActivity(), android.R.layout.simple_spinner_item, values);
        spinner2.setAdapter(adapter2);

        //include header in the view
        ((ListView)view.findViewById(R.id.list)).addHeaderView(header);

最佳答案

尝试更改线路...

View header = (View)inflater.inflate(R.layout.header_layout, container, false);

View header = (View)inflater.inflate(R.layout.header_layout, null, false);

关于java - ClassCastException 将标题添加到 ListView (ListFragment onCreateView),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27140494/

相关文章:

javascript - 如何将对象从一个 JSP 传递到另一个 JSP?

java - 为什么我的 Spring 服务返回客户端请求的任何内容类型?

android - 将 kotlin 用于 FacebookLogin 时, "unresolved reference"背后的原因是什么?

android - RxJava - 组合多个/不同的网络服务调用

android - 通过 onListItemClick() 更改 Activity 内的 Fragments

android - 从工具栏中的 fragment 访问 Imageview

java - 值没有存储在数组中?

java - 如何使用 kotlin 打包 List<Int>

android - 在 Android 中实现 fragment

java - Spring + hibernate : No Session Found For Current Thread