fragment的入门DEMO
来源:互联网 发布:tftp软件下载 编辑:程序博客网 时间:2024/04/28 22:11
效果图:
代码如下:
1、main.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" > <fragment android:id="@+id/title" class="com.njupt.fragment1.TitleFragment" android:layout_width="0dp" android:layout_height="fill_parent" android:layout_weight="1" /> <FrameLayout android:id="@+id/detail" android:layout_width="0dp" android:layout_height="fill_parent" android:layout_weight="1" /> </LinearLayout>
2、TitleFragment
package com.njupt.fragment1;import android.app.FragmentManager;import android.app.FragmentTransaction;import android.app.ListFragment;import android.os.Bundle;import android.view.View;import android.widget.ArrayAdapter;import android.widget.ListView;public class TitleFragment extends ListFragment {private String[] data = new String[]{"星期一","星期二","星期三","星期四","星期五","星期六","星期天"};private int currentPosition = 0;@Overridepublic void onActivityCreated(Bundle savedInstanceState) {super.onActivityCreated(savedInstanceState);setListAdapter(new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_activated_1,android.R.id.text1,data));showDetail(currentPosition);}public void showDetail(int index){FragmentManager fm = getFragmentManager();DetailFragment detail = (DetailFragment) fm.findFragmentById(R.id.detail);if(detail == null || index != detail.getShowIndex()){getListView().setChoiceMode(ListView.CHOICE_MODE_SINGLE);getListView().setItemChecked(index, true);detail = DetailFragment.getInstance(index);FragmentTransaction ft = fm.beginTransaction();ft.replace(R.id.detail, detail);ft.commit();}}@Overridepublic void onListItemClick(ListView l, View v, int position, long id) {super.onListItemClick(l, v, position, id); showDetail(position);}}
3、DetailFragment
package com.njupt.fragment1;import android.app.Fragment;import android.os.Bundle;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.TextView;public class DetailFragment extends Fragment {private String[] data = new String[]{"星期一","星期二","星期三","星期四","星期五","星期六","星期天",};public static DetailFragment getInstance(int index){DetailFragment df = new DetailFragment();Bundle args = new Bundle();args.putInt("index", index);df.setArguments(args);return df;}public int getShowIndex(){return getArguments().getInt("index");}@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {TextView tv = new TextView(getActivity());tv.setText(data[getShowIndex()]);return tv;}}
- fragment的入门DEMO
- Fragment的demo
- Fragment与Fragment的通信交互Demo
- Fragment的快速入门
- Fragment demo
- fragment demo
- Fragment demo
- Fragment小Demo入门理解及与Activity通信
- Android笔记 fragment的Tab样式demo
- Fragment的显示与隐藏及demo
- viewpager+fragment实现的一个小Demo
- Android笔记 fragment入门 动态加载fragment demo+ 判断横竖屏
- 【Android入门】Fragment 的使用
- 我的Spring入门Demo
- ActiveMQ的入门实例demo
- Redis的入门Demo(java)
- android Fragment demo学习
- android Fragment demo学习
- 如何用PHP实现页面跳转?
- 程序编译后运行时的内存分配
- mac 下打开终端的快捷键
- 题目1078:二叉树遍历
- POJ 1159 Palindrome
- fragment的入门DEMO
- hdu1848 Fibonacci again and again
- 坚持编程
- 去掉word冗余格式 java正则表达式
- wp-Pivot 仿新浪微博全屏模式
- 黑马程序员------反射的深入学习(No.1)(Class类、Constructor类、Field类、Method类、数组的反射)
- 跨线程调用窗体控件
- Android-JNI编程-图文解析
- error U1023: syntax error in expression