Fragment问题集

最近做一个APP  ,因为在慕课网上学习到了新的方法来做Tab(APP主界面)效果,所以刚学不久久用起来了

用的Fragment实现Tab方法

查询了一下午的安卓资料,关于这个东西是在安卓3.0以后的版本出来的,为了方便的控制主界面,使代码更加容易完成和更容易后期维护

怎么说,fragment就是一个子activity

 

慕课网是只是点到怎么用Fragment来构建Tab,但是用起来,在fragment中写代码就没有讲

自己做了下,一开始是按着activity的方法来做的,结果发现很多问题,百度了一下,解决了一部分,因为初用Fragment所以必定以后还会发现更多的问题,所以在此将关于Fragment的问题总结一下

问题一:控件的使用

布局文件.xml和activity中的使用方法是一样的

但是在.java文件中就不一样了,比如ImageButton

private ImageButton image_country_zhong;

之后在activity中的初始化是:

1 back = (ImageButton) findViewById(R.id.goback);

而在fragment中的初始化则是:

1     back = (ImageButton) view.findViewById(R.id.back);

问题二:this的问题

在activity中。比如:

1  SimpleAdapter saItem = new SimpleAdapter(this,meumList,R.layout.item, new String[]{"ItemImage","ItemText"},new int[]R.id.ItemImage,R.id.ItemText});  

 

而在fragment中就要:

1  SimpleAdapter saItem = new SimpleAdapter(getActivity(),       meumList, R.layout.item, new tring[]"ItemImage","ItemText"},new int[]{R.id.ItemImage,R.id.ItemText});  

区别就是:第一个参数,Activity中的this换成了Fragment中的getActivity(),Fragemnt 和Activity是宿主和依托者的关系,用法差不多,但是必须要依托Activity,在Fragement中额上下文必须要得到宿主的上下文

 

未完待续!

posted @   听着music睡  阅读(388)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示