到目前为止,我一直使用 TabHost
为我的应用程序创建 3 个选项卡。每个选项卡都由一个 Activity 表示,我在其中通过 setContentView(R.layout.something)
获取布局。从 XML 文件。
所以 3 个选项卡、3 个 Activity 和 3 个 XML 文件。
现在我偶然发现了 fragment ,这是新的更好的方法,所以这是我的问题。
Fragments 处理 UI,因此创建 3 个由 FragmentPagerAdapter
处理的 Fragments .在每个 fragment 中,我通过 XML 文件创建内容。
但是我应该把关于哪个按钮做什么的所有代码放在哪里,从数据库读取或写入等等。到目前为止,所有这些都在由 Tabhost
加载的每个 Activity 中。 .
我是否将所有代码都放入了 onCreate()
中?等每个 fragment 的方法还是有更好更清洁的方法?
最佳答案
您提出的方法非常好!
就在哪里做什么而言,我建议您在每个 fragment 的 onCreateView() 中创建/更改页面( fragment )的 UI,以及 onActivityCreated 中的任何逻辑(读取数据库等) ().我建议在 fragment 中避开 onCreate() ,因为它在与 Activity 关联之前被调用(防止你做诸如对内容提供者的托管查询之类的事情)。可以在 onCreateView 或 onActivityCreated() 中定义按钮点击监听器。
有什么更具体的,请告诉我。不要忘记,标准寻呼机不包含一行标签标题/图标,但 Google ViewPagerIndicator 和您会找到一个库,您可以使用它来执行此操作。
关于android - 使用 Viewpager : Where to put all my Code 从 TabHost 切换到 Fragments,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8946245/