-4

我是 Android 编程新手。但我对 Java 有很好的了解。

我观看了 travis 创建的 mybringback android 系列。多亏了他,我学到了太多东西。但我的问题是我不能把东西放在一起。

无论如何,我想创建一个所有活动都包含的应用程序:

  1. 标题菜单在所有活动中都相同。
  2. 身体容器
  3. 主菜单位于应用程序的页脚,在所有活动中也是相同的。这是我创建的屏幕截图,以帮助您解释我的真正意思。

我创建了一个小屏幕截图来帮助您理解我的真正意思 Link Here

我对此进行了一些搜索,但我不知道什么是最好的解决方案。

我是否应该在 xml 中创建页眉菜单,然后在 xml 文件中创建页脚菜单,然后使用 Java 将它们包含在活动中?!

使用操作栏是我解决方案的答案吗?

我有点迷路了。

感谢您的时间。

4

1 回答 1

0

使用这种方式,您可以制作页眉页脚 xml 并将其用于您的任何活动,您也只需在 HeaderFooter.java 中为页眉页脚中的控件编写代码,并可以在您的项目中访问它。

<?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/commonlayout"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="#FFFFFF"
        android:orientation="vertical"
        android:weightSum="10" >

        <LinearLayout
            android:id="@+id/llheader"
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_weight="1" >

            <RelativeLayout
                android:id="@+id/relativeLayout1"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_gravity="center" >

                <Button
                    android:id="@+id/Button_HeaderFooterSubscribe"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentRight="true"
                    android:layout_centerVertical="true"
                    android:layout_marginRight="2dp" />

                <Button
                    android:id="@+id/Button_logout"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentRight="true"
                    android:layout_centerVertical="true"
                    android:layout_marginRight="2dp" />

                <Button
                    android:id="@+id/Button_playlist"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_centerVertical="true"
                    android:layout_marginLeft="2dp" />
            </RelativeLayout>
        </LinearLayout>

        <LinearLayout
            android:id="@+id/lldata"
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_weight="8"
            android:background="#FFFFFF" >
        </LinearLayout>

        <LinearLayout
            android:id="@+id/llfooter"
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_margin="0dp"
            android:layout_weight="1"
            android:gravity="center"
            android:orientation="horizontal"
            android:visibility="visible"
            android:weightSum="5.0" >

            <Button
                android:id="@+id/home"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:background="@drawable/home"
                android:padding="10px"
                android:textColor="#FFFFFF" >
            </Button>

            <Button
                android:id="@+id/issue"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:padding="10px"
                android:textColor="#FFFFFF" >
            </Button>

            <Button
                android:id="@+id/browse"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:padding="10px"
                android:textColor="#FFFFFF" >
            </Button>

            <Button
                android:id="@+id/search"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:padding="10px"
                android:textColor="#FFFFFF" >
            </Button>

            <Button
                android:id="@+id/favorite"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:padding="10px"
                android:textColor="#FFFFFF" >
            </Button>
        </LinearLayout>

    </LinearLayout>

然后创建一个 HeaderFooter.java Activity

public class HeaderFooter extends Activity {
        public void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
             setContentView(R.layout.headerfooter);
        }
 }

现在将上述活动扩展到您的所有其他活动,并在 headerfooter.xml 的中间布局中扩展您的特定视图

public class Home extends HeaderFooter 
{
        @Override
        public void onCreate(Bundle savedInstanceState)
        {
            super.onCreate(savedInstanceState);
            ViewGroup vg = (ViewGroup) findViewById(R.id.lldata);
            ViewGroup.inflate(Home.this, R.layout.home, vg);
        }
}
于 2013-07-24T11:04:08.077 回答