+-
嵌套的Android视图,静态标题视图
为了使我的解释更简短,我对自己要达到的目标做了“模拟”.
我想创建一个可重用的页眉,页脚和一个通用的视图组,可以填充所需的任何内容. ListActivity,GridView等.

到目前为止,我已经尝试了几种不同的方法,但没有任何运气.我的第一个尝试是编写三个基本视图.一个将用作容器的RelativeLayout.我曾经添加页眉(工作),编写了GridView(工作),当尝试将脚注与include相连时,无论我使用哪种重力,它都永远不会锚定在屏幕底部.

我目前正尝试非常简单地学习android的视图系统.所以,我的第一步.获取使用从适配器提取的图像的GridView. (本质上是来自android网站的“ Hello GridViews”演示-完成,可以正常工作)

下一步宝贝.尝试在GridView …灾难之上添加静态标头.我觉得我缺少重要的垫脚石来使此工作正常进行,朝着正确方向的任何提示将不胜感激.我不太明白为什么当高度仅为“ wrap_content”(应为“ 44dip”)时,包含Button的LinearLayout将GridView推离屏幕(位于HiearchyViewer中).

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
>
    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
    >
        <Button
            android:layout_width="fill_parent"
            android:layout_height="44dip"
            android:text="test"
        />
    </LinearLayout>
    <GridView xmlns:android="http://schemas.android.com/apk/res/android" 
         android:id="@+id/gridview"
         android:layout_width="fill_parent" 
         android:layout_height="fill_parent"
         android:columnWidth="112dip"
         android:numColumns="auto_fit"
         android:verticalSpacing="0dp"
         android:horizontalSpacing="0dp"
         android:stretchMode="columnWidth"
         android:gravity="center"
    />
</LinearLayout>

//编辑,固定的xml.

编辑2010年10月25日:这是我现在正在使用的解决方案.每个活动都有其自己的视图,该视图会膨胀. “可重用”视图包含在其中

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<include layout="@layout/titlebar" />
<ListView
    android:id="@+id/standingsListView"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1.0"
    android:background="#FFF"
/>
<include layout="@layout/ad" />
</LinearLayout>
最佳答案
至少我可以通过“按钮”帮助您问题:您错过的魔术属性是android:orientation

如果没有此属性,则android设置为android:orientation =“ horizo​​ntal”.这意味着每个视图都在水平线上对齐,因此按钮的右边是网格,由于您的按钮所在的LinearLayout具有layout_width =“ fill_parent”,因此无法显示网格

最后一个提示:少即是多,如果布局中只有一个视图,则删除布局并仅放置视图. (如果您只想在LinearLayout中有一个按钮)

点击查看更多相关文章

转载注明原文:嵌套的Android视图,静态标题视图 - 乐贴网