【问题标题】:listview in fragment without fragment view没有片段视图的片段中的列表视图
【发布时间】:2014-09-09 10:05:52
【问题描述】:

我在项目中有片段 我想创建 Listview 但我不能: 这个代码怎么改?

public class Menu extends Fragment implements OnClickListener {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    ViewGroup rootView = (ViewGroup) inflater.inflate(R.layout.menu, container, false);

    //Button ButtonF1= (Button) rootView.findViewById(R.id.buttonF1);
    //ButtonF1.setOnClickListener(this);

    return rootView;
};

}

还有我的 Xml 文件:

    <?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/ScrollView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
    </LinearLayout>
</ScrollView>

【问题讨论】:

  • 试试this
  • 我有扩展片段
  • @sajjadYosefi :不清楚你在问什么。此外,创建一个名为 Menu 的类也是一个坏主意,因为 Android 也有一个具有该名称的类 - 你可能会遇到冲突。最后,ListView 的代码在哪里?你还没有展示它。

标签: android listview android-fragments


【解决方案1】:

你可以看一个例子here

简历:

改为:

public class Menu extends Fragment

你可以使用:

public class MyMenu extends ListFragment

它改变了方法

@Override
public void onActivityCreated(Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
    ArrayList<ListviewContactItem> yourListHere = GetYourList();
    setAdapter(new YourListviewAdapter(getActivity(), listContact));
}

onActivityCreated 是无效的,您不需要像在 onCreateView 中那样返回视图

还需要使用适配器(自己的或标准的)。您可以在上一个链接中查看适配器。

在您添加 Xml 路由的适配器中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-27
    相关资源
    最近更新 更多