ListFragment,即Fragment的一个子类,当我们用的一个Fragment只需要一个listview视图的时候使用 该类有几个特点: 1、ListFragment 本身具只有一个ListView...视图,返回的也是一个只有ListView的布局对象 2、ListFragment 不需要指定布局,本身固定,只有一个ListView视图 3、给ListFragment中的ListView加载数据或者绑定适配器都只能出现...onCreateView(),因为onCreateView方法之后,ListView对象才创建, 4、给 ListView设置适配器 用setListAdapter 5、ListFragment已经实现了其...FragmentTransaction action = manager.beginTransaction(); 20 //添加 21 action.add(R.id.view_listfragment...android.widget.ListView; 11 import android.widget.Toast; 12 13 public class MyListFragment extends ListFragment
之前实现过Android开发之ContentProvider结合LoaderManager加载数据,现在来实现用ListFragment加载 先看main.xml 说明:右边的linearlayout是要加载listFragment...的子类的,通过“添加”按钮实现 由于是listFragment的子类,所以还是需要布局文件的(就是listfragment的默认布局) list.xml <?...) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //加载listfragment...而这个例子的listview在listfragment里面,所以要挪到listfragment里面初始化 RightFragment.java: package com.example.listfragmentloadermanager
TODO Auto-generated method stub //super.onSaveInstanceState(outState); } 第二个、使用ListFragment...中,想当然的以为,像其他Fragment一样: public class ListFragmentTest extends ListFragment { @Override public...(ListFragment.java:402) 07-16 15:43:22.026: E/AndroidRuntime(605): at android.app.ListFragment.onViewCreated...因为ListFragment里面已经提供了系统自带的ListView,这样写,当然出错。...其实ListFragment当然运行自定义布局,但是Listview要用系统的: <?xml version="1.0" encoding="utf-8"?
. */ public class MyAdapter extends FragmentPagerAdapter{ List<Fragment listFragment; List<...,List<String listTab) { super(fm); this.listFragment=listFragment; this.listTab=listTab; }...(position); } @Override public int getCount() { //一共多少个页面 return listFragment.size();...= new ArrayList<Fragment (); //view加入list listFragment.add(new MyFragment1()); listFragment.add(new...MyFragment2()); listFragment.add(new MyFragment3()); //标题加入list listTab = new ArrayList<String ()
是怎么实现无限轮播的呢,关键setData()方法里,如下代码: public void setData(FragmentManager fragmentManager, List listFragment...){ viewNumber=listFragment.size(); initIndicator(getContext()); this.loopFragmentPagerAdapter...代码如下: public class LoopFragmentPagerAdapter extends FragmentPagerAdapter { public List listFragment...LoopFragmentPagerAdapter(FragmentManager fm, List listData) { super(fm); this.listFragment...用position = position % listFragment.size(); 滚动的坐标求余Fragment的个数既求得正确的Fragemnt的坐标,代码很少,很简单,这样就可以Fragment
如下例,OnArticleSelectedListener接口 在fragmentA中定义: public static class FragmentA extends ListFragment{...OnArticleSelectedListener接口,检查方法就是对传入的activity的实例进行类型转换, 如下所示: public static class FragmentA extends ListFragment...例如,如果fragmentA是一个ListFragment,每次选中列表的一项时,就会调用fragmentA的onListItemClick()方法,在这个方法中调用onArticleSelected(...)来与activity共享事件,如下: public static class FragmentA extends ListFragment{ OnArticleSelectedListener
public static class FragmentA extends ListFragment { ......public static class FragmentA extends ListFragment { onMp3ChangedListener mListener; ......例如,Fragment A继承了ListFragment,那么用户每次点击列表项时,系统都会调用Fragment中的onListItemClick()方法,然后调用onMp3Changed()方法和Activity...共享事件: public static class FragmentA extends ListFragment { OnArticleSelectedListener mListener;
android:layout_height="match_parent" android:layout_weight="1" class="com.xuliugen.frag.ListFragment...android:layout_height="match_parent" android:layout_weight="1" class="com.xuliugen.frag.ListFragment...将文本框对象添加到滚动视图中 text.setText(Data.DETAIL[getShownIndex()]); // 设置文本框中要显示的文本 return scroller; } } ListFragment.java...android.view.View; import android.widget.ArrayAdapter; import android.widget.ListView; public class ListFragment...extends android.app.ListFragment { boolean dualPane; // 是否在一屏上同时显示列表和详细内容 int curCheckPosition = 0;
如果开发ListFragment的子类,无须重写onCreateView()方法,只要调用ListFragment的setAdapter()方法为该Fragment设置Adapter即可。...该ListFragment将会显示该Adapter提供的列表项。 本Demo实现了一个ListFragment的子类用于显示书目列表。...ListView.CHOICE_MODE_SINGLE : ListView.CHOICE_MODE_NONE); } } 为了控制ListFragment显示的列表项,只要调用ListFragment...提供的setAdapter()方法,即可让该ListFragment显示该Adapter所提供的多个列表项。.../>元素添加了BookListFragment,该Activity的左边将会显示一个ListFragment,右边只是一个FrameLayout容器,该容器将会动态更新其中显示的Fragment。
四、测试代码: package com.goso.testapp; import android.app.Activity; import android.app.ListFragment; import...android.view.ViewGroup; import android.widget.ArrayAdapter; import android.widget.ListView; /** * Demonstration of using ListFragment...Log.e("HJJ", "Activity &&&& onDestroy..."); } public static class ArrayListFragment extends ListFragment
new_item_fragment.xml 中并排放置一个 EditText 和一个按钮 ListStoreFragment.java 使用前面定义的界面 public class ListStoreFragment extends ListFragment...{ /// 继承自ListFragment,已经封装好了listview /// 不需要自己写ListView了 } NewItemFragment.java /** * 声明一个接口,定义向activity...adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, data); // ListFragment
1.3 Fragment的使用相关 使用Fragment时,需要继承Fragment或者Fragment的子类(DialogFragment, ListFragment, PreferenceFragment...注意,如果继承自ListFragment,onCreateView()默认的实现会返回一个ListView,所以不用自己实现。 ...这个情况下,在fragment A中声明一个这样的接口OnArticleSelectedListener: public static class FragmentA extends ListFragment...比如,如果fragment A是ListFragment的子类,每一次用户点击一个列表项目,系统调用fragment中的onListItemClick()方法,在这个方法中可以调用onArticleSelected...public static class FragmentA extends ListFragment { OnArticleSelectedListener mListener; ...
ListFragment Displays a list of items that are managed by an adapter (such as a SimpleCursorAdapter)...注:如果你的fragment是从ListFragment中派生的,就不需要实现onCreateView()方法了,因为默认的实现已经为你返回了ListView控件对象。...如下例,OnArticleSelectedListener接口在fragmentA中定义: public static class FragmentA extends ListFragment{ .....例如,如果fragmentA是一个ListFragment,每次选中列表的一项时,就会调用fragmentA的onListItemClick()方法,在这个方法中调用onArticleSelected(...第一个是TitlesFragment,它从ListFragment派生,大部分列表的功能由ListFragment提供。
toolbar_tab; private NoScrollViewPager vp_content; private ViewPagerAdapter vpAdapter; private List<Fragment listFragment...vp_content = findViewById(R.id.vp_content); vpAdapter = new ViewPagerAdapter(getSupportFragmentManager(),listFragment...vp_content.setOffscreenPageLimit(2); toolbar_tab.setupWithViewPager(vp_content); for(int i=0;i<12;i++){ listFragment.add...(CeshiFragment.newInstance("第"+i+"页")); } vpAdapter.notifyDataSetChanged(); for(int i=0;i<listFragment.size
ListFragment 显示一个由一个adapter(例如 SimpleCursorAdapter)管理的项目的列表, 类似于ListActivity....注意: 如果你的fragment是ListFragment的子类,它的默认实现是返回从onCreateView()返回一个ListView,所以一般情况下不必实现它....OnArticleSelectedListener 接口在fragment A中声明: [java] view plain copy public static class FragmentA extends ListFragment...[java] view plain copy public static class FragmentA extends ListFragment { OnArticleSelectedListener...[java] view plain copy public static class FragmentA extends ListFragment { OnArticleSelectedListener
rectangle" > 0x12 在 ListFragment...中 set footer 后 java.lang.IllegalStateException问题 不要 ListFragment 的 onCreateView() 中设置 footer ,要在 onActivityCreate
mFragments = new ArrayList(); for (int i = 0; i < mTitles.length; i++) { ListFragment...listFragment = ListFragment.newInstance(mTitles[i]); mFragments.add(listFragment);
来看这个场景,我们有一个activity默认显ListFragment,点击了ListFragment以后我们会跳转到DetailFragment,来看下代码: class ListViewModel...navigateToDetails fun userClicksOnButton() { _navigateToDetails.value = true } } 再看下核心的ListFragment...; class ListFragment : Fragment() { private val model: ListViewModel by activityViewModels(...这个流程初看是没问题的,点击以后确实能跳转到DetailFragment,但是当我们在DetailFragment页面点击了返回键以后,理论上会回到ListFragment,但实际的执行结果是回到ListFragment...问题其实就出现在Fragment生命周期这里,当你按了返回键以后,ListFragment的onViewCreated又一次会被执行,然后这次你observe了,Livedata之前的值是true,于是又会触发跳转到
childLeft + childWidth, childView.getMeasuredHeight()); childLeft += childWidth; } } } } <android.com.listfragment.PullView...match_parent" android:layout_height="1500dp" android:background="#806363" </LinearLayout </android.com.listfragment.PullView
onMenuItemClick; 2、菜单Fragment类定义OnSlidingMenuListener的实例,及该实例的设置方法setOnSlidingMenuListener; 3、菜单布局的Fragment类继承自ListFragment...左侧菜单的代码示例: import android.content.Context; import android.os.Bundle; import android.support.v4.app.ListFragment...import android.view.ViewGroup; import android.widget.ListView; public class BaseMenuFragment extends ListFragment
领取专属 10元无门槛券
手把手带您无忧上云