Fragment的简单使用
来源:互联网 发布:矩阵论教程 张绍飞 pdf 编辑:程序博客网 时间:2024/05/22 03:29
Fragment(碎片)是一种可以嵌入在活动中的UI片段。他能让程序更加合理和充分利用大屏幕空间。
1.fragment有自己的生命周期 如图所示:
2.Fragment必须依赖于Activity存在。
3.Fragment 通过getActivity()可以获取所在的Activity;Activity通过FragmentManger的findFragmentById()或者findFragmentByTag()获取Fragment。
举个栗子:
1新建一个类AFragment继承Fragment(有两个Fragment,分别是android.app.Fragment和support-v4的,support-v4在安卓所有的版本保持一致,而support-v4在Android4.2之前运行会崩溃。)这里面回调了两个方法。一个是
onCreateView加载fragment中的视图。另一个是onViewCreated。
AFragment的视图代码:public class AFragment extends Fragment{ private TextView mTextView; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) { View view=inflater.inflate(R.layout.fragment_a,container,false); return view; } @Override public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); mTextView= (TextView) view.findViewById(R.id.tv_title); }}
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:gravity="center" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/tv_title" android:gravity="center" android:textSize="40sp" android:text="我是AFragment" android:textColor="#000" android:layout_width="match_parent" android:layout_height="wrap_content"/></LinearLayout>
BFragment的一切与A类似记得把里面的A换成B;
2.对Activity代码进行操作public class MainActivity extends AppCompatActivity { private AFragment mAFragment; private BFragment mBFragment; private Button mButton; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mAFragment=new AFragment(); getFragmentManager().beginTransaction().add(R.id.fl,mAFragment).commitAllowingStateLoss(); mButton= (Button) findViewById(R.id.change); mButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (mBFragment==null){ mBFragment=new BFragment(); } getFragmentManager().beginTransaction().replace(R.id.fl,mBFragment).commitAllowingStateLoss(); } }); }}
阅读全文
0 0
- Fragment的简单使用
- Fragment的简单使用
- Fragment的简单使用
- Fragment 的简单使用
- 简单的Fragment使用
- Fragment的简单使用
- Fragment的简单使用
- android Fragment的简单使用
- fragment使用的简单示例
- Android fragment的简单使用
- android Fragment 简单的使用
- Android Fragment的简单使用
- android fragment的简单使用
- android 中Fragment 的简单使用
- 使用Fragment实现简单的数据交互
- Android上Fragment的简单使用
- 简单的Fragment使用(包括横竖屏)
- Fragment简单的创建与使用
- 【转】卡特兰数及其应用
- js拼接html中调用onclick方法传递的参数问题
- 【另一种选择:复原力】我们每个人…
- 【转】二分查找(折半查找Binary Search)
- 遗传算法
- Fragment的简单使用
- 适配器模式
- 【好男/女人要去哪裡找?遇人不淑…
- 【转】 海量数据处理系列----C++中Bitmap算法的实现
- 51绿板数码管动态显示
- html学习16-网页联系-超链接-外部链接
- 回文数
- 【悲剧带来的不仅仅只是痛苦,也带…
- 【转】C++输入输出操作符的重载