【问题标题】:Problems with creating my First android application [closed]创建我的第一个 android 应用程序的问题[关闭]
【发布时间】:2013-07-24 10:48:27
【问题描述】:

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

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

总之,我想创建一个包含所有活动的应用程序:

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

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

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

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

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

我有点迷路了。

感谢您的宝贵时间。

【问题讨论】:

    标签: java android mobile


    【解决方案1】:

    使用这种方式,您可以制作页眉页脚 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);
            }
    }
    

    【讨论】:

    • 非常感谢,我会试试的!
    • 我正在使用你的方式,它就像一个魅力。再次感谢您,创建了一个处理页脚和标题菜单的 BaseActivity 类,我所要做的就是将 baseActivity 而不是 Activity 扩展到我的所有类
    猜你喜欢
    • 1970-01-01
    • 2020-09-17
    • 1970-01-01
    • 2021-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-20
    • 2019-04-03
    相关资源
    最近更新 更多