嗨,我在android上工作。
我有一个在每个活动中都用到的布局。
我的意思是我有一个布局,其中有页脚和页眉。
在每个活动上,页眉和页脚相同,并且具有相同的操作。

我想对页眉和页脚使用通用布局。
我的意思是,在一个活动中,我会把内容区域布局放在总体布局上。
我发现了一些东西,但还不够。
我该怎么做呢?
有没有做这件事的虚拟文件?
对不起,我的英语不好。
发布于 2012-03-22 19:00:21
您正在谈论的是一种新的Android设计模式,称为Fragments。因为3.0中的片段是像视图一样的小活动,可以组合成一个屏幕。
因此,您将创建一个页眉和页脚片段,然后将它们包含在所有需要它们的活动中。
您可能想要查看的另一个模式是Action bar模式,它用于在具有常见内容和功能的屏幕顶部放置一个栏,类似于您的标题。
另外,另一种方法是使用xml文件来定义页眉和页脚,然后将它们实例化为代码中的视图,并以编程方式将它们添加到内容视图xml定义中。这样做的问题是,页眉和页脚后面的代码需要在每个控制器中复制。你最好的选择是使用片段,我将在下面放一些有用的链接:
http://developer.android.com/guide/topics/ui/actionbar.html
http://developer.android.com/guide/topics/fundamentals/fragments.html
http://mobile.tutsplus.com/tutorials/android/android-compatibility-working-with-fragments/
https://stackoverflow.com/questions/5710573/need-a-fragments-example
发布于 2012-03-22 18:59:40
您可以使用includes作为页眉和页脚,或者从基类动态添加它们,但我认为更好的方法是使用单个活动来托管应用程序,然后使用片段来显示屏幕内容。
http://android-developers.blogspot.co.uk/2011/02/android-30-fragments-api.html
发布于 2012-03-22 19:05:50
我不反对碎片,是的,它们是可行的,但是对于android的初学者来说,你可以用<include>和基础活动来实现你想要做的事情。
这个article很好地解释了xml的用法,但总而言之,您可以拥有一个布局<include>文件,它可以“包含”到另一个布局中,而不是一遍又一遍地重写相同的内容。
对于页眉和页脚的功能(假设它们在点击时会做一些事情),你可以创建一个基本的activity,你可以扩展它,而不是普通的android Activity。在此基本活动中定义页眉和页脚单击的逻辑,例如使用以下示例代码:
public class MyBaseActivity extends Activity {
...
public void onHeaderClick(View view) {
// when header is clicked, do this.
}
public void onFooterClick(View view) {
// when footer is clicked, do this.在布局中(作为单独的xml),将onClick属性添加到页眉/页脚,并在基本活动中指定方法的名称。
比如
android:onClick="onHeaderClick"然后,只需为所有具有页眉和页脚的活动扩展MyBaseActivity即可。
https://stackoverflow.com/questions/9820825
复制相似问题