如何自定义布局(高度和宽度)以及布局的容器?

2024-02-05

I have created a TableLayout with two rows where first row has one TextView and second row has two columns, first one has a ListView and the second one has one EditText and a Button each in different rows. I want both rows of equal height (exactly half of the screen) and both of the columns of second row should be of equal width (exactly half of the screen). I Want to build something like this: enter image description here

我应该如何进行?我应该选择哪种布局?


我认为您当前的解决方案不起作用(因为需要相等的空间(宽度和高度)+ListView在场)。一种解决方案是使用嵌套weights(这对性能不利,但是(可能在不知道你做什么的情况下)并不是那么重要的事情,会破坏你的应用程序)就像下面的布局一样:

<?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"
    android:orientation="vertical" >

    <include
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        layout="@layout/identical_layout" />

    <TextView
        android:id="@+id/textView1"
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:text="TextView" />

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1" >

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

        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="fill_parent"
            android:layout_weight="1"
            android:orientation="vertical" >

            <EditText
                android:layout_width="fill_parent"
                android:layout_height="wrap_content" />

            <Button
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:text="ddd" />
        </LinearLayout>
    </LinearLayout>




</LinearLayout>

避免嵌套的另一种选择weights问题是使用一个RelativeLayout如下(我没有测试过):

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <include
        android:id="@+id/included_layout"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        layout="@layout/identical_layout" />

    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_below="@id/included_layout" >

        <View
            android:id="@+id/anchor"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_centerVertical="true" />

        <TextView
            android:id="@+id/textView1"
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_above="@id/anchor"
            android:layout_alignParentTop="true"
            android:background="#99cc00"
            android:text="TextView" />

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_alignParentBottom="true"
            android:layout_below="@id/anchor" >

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

            <LinearLayout
                android:layout_width="0dp"
                android:layout_height="fill_parent"
                android:layout_weight="1"
                android:orientation="vertical" >

                <EditText
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content" />

                <Button
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:text="ddd" />
            </LinearLayout>
        </LinearLayout>
    </RelativeLayout>

</RelativeLayout>

The identical_layout布局文件代表您共享的通用布局Activities.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何自定义布局(高度和宽度)以及布局的容器? 的相关文章

  • 如何在 Android 中保存相机的临时照片?

    在尝试从相机拍照并将其保存到应用程序的缓存文件夹中时 我没有得到任何可见的结果 应用程序不会崩溃 但在 LogCat 上 当我尝试将 ImageView src 字段设置为刚刚获取的文件的 URI 时 我收到此消息 09 17 14 03
  • StrictMode 策略违规:我的应用程序中存在 android.os.strictmode.LeakedClosableViolation?

    Android 开发新手 第一次在我的应用程序上尝试 StrictMode 我注意到以下内容 并想知道这是否是我的应用程序或库中的问题 我不太清楚 谢谢你 D StrictMode StrictMode policy violation a
  • 卸载后 Web 应用程序不显示“添加到主屏幕”

    这是我第一次创建网络应用程序 我设法解决了这个问题 所以我得到了实际的 chrome 提示 将其添加到主屏幕 然后我从手机上卸载了该网络应用程序 因为我想将其展示给我的同事 但是 屏幕上不再出现提示 问题 这是有意为之的行为还是我的应用程序
  • Android 后退按钮无法与 Flutter 选项卡内的导航器配合使用

    我需要在每个选项卡内有一个导航器 因此当我推送新的小部件时 选项卡栏会保留在屏幕上 代码运行得很好 但是 android 后退按钮正在关闭应用程序而不是运行 Navigator pop import package flutter mate
  • Android 中 Kotlin 协程的正确使用方式

    我正在尝试使用异步更新适配器内的列表 我可以看到有太多的样板 这是使用 Kotlin 协程的正确方法吗 这个可以进一步优化吗 fun loadListOfMediaInAsync async CommonPool try Long runn
  • CollapsingToolBarLayout - 状态栏稀松布颜色不改变

    几天前我更新了我的 android studio 并开始使用 CoordinatorLayout 和 CollapsingToolbarLayout 只是尝试一些东西 工具栏稀松布颜色似乎覆盖了状态栏初始颜色和状态栏稀松布颜色 从 xml
  • 在 java 类和 android 活动之间传输时音频不清晰

    我有一个android活动 它连接到一个java类并以套接字的形式向它发送数据包 该类接收声音数据包并将它们扔到 PC 扬声器 该代码运行良好 但在 PC 扬声器中播放声音时会出现持续的抖动 中断 安卓活动 public class Sen
  • 使用 Android 发送 HTTP Post 请求

    我一直在尝试从 SO 和其他网站上的大量示例中学习 但我无法弄清楚为什么我编写的示例不起作用 我正在构建一个小型概念验证应用程序 它可以识别语音并将其 文本 作为 POST 请求发送到 node js 服务器 我已确认语音识别有效 并且服务
  • Android:捕获的图像未显示在图库中(媒体扫描仪意图不起作用)

    我遇到以下问题 我正在开发一个应用程序 用户可以在其中拍照 附加到帖子中 并将图片保存到外部存储中 我希望这张照片也显示在图片库中 并且我正在使用媒体扫描仪意图 但它似乎不起作用 我在编写代码时遵循官方的Android开发人员指南 所以我不
  • 发布android后更改应用内购买项目的价格

    在 Google Play 上发布后 是否可以更改应用内购买商品的价格 我假设该应用程序也已发布 完整的在线文档位于http developer android com http developer android com也http sup
  • 原色(有时)变得透明

    我正在使用最新的 SDK 版本 API 21 和支持库 21 0 2 进行开发 并且在尝试实施新的材料设计指南时遇到了麻烦 材料设计说我需要有我的primary color and my accent color并将它们应用到我的应用程序上
  • 如何在PreferenceActivity中添加工具栏

    我已经使用首选项创建了应用程序设置 但我注意到 我的 PreferenceActivity 中没有工具栏 如何将工具栏添加到我的 PreferenceActivity 中 My code 我的 pref xml
  • 如何发布Android .aar源以使Android Studio自动找到它们?

    我正在将库发布到内部 Sonatype Nexus 存储库 Android Studio 有一个功能 可以自动查找通过 gradle 引用的库的正确源 我将 aar 的源代码作为单独的 jar 发布到 Nexus 但 Android Stu
  • 如何使用InputConnectionWrapper?

    我有一个EditText 现在我想获取用户对此所做的所有更改EditText并在手动将它们插入之前使用它们EditText 我不希望用户直接更改中的文本EditText 这只能由我的代码完成 例如通过使用replace or setText
  • Android Studio 0.4.3 Eclipse项目没有gradle

    在此版本之前 在 Android Studio 中按原样打开 Eclipse 项目似乎很容易 无需任何转换 我更喜欢 Android Studio 环境 但我正在开发一个使用 eclipse 作为主要 IDE 的项目 我不想只为这个项目下载
  • Android向menuItem添加子菜单,addSubMenu()在哪里?

    我想根据我的参数以编程方式将 OptionsMenu 内的子菜单添加到 menuItem 中 我检查了android sdk中的 MenuItem 没有addSubMenu 方法 尽管你可以找到 hasSubMenu 和 getSubMen
  • .isProviderEnabled(LocationManager.NETWORK_PROVIDER) 在 Android 中始终为 true

    我不知道为什么 但我的变量isNetowrkEnabled总是返回 true 我的设备上是否启用互联网并不重要 这是我的GPSTracker class public class GPSTracker extends Service imp
  • 增加活动的屏幕亮度

    显然 Android 操作系统中至少有三种不同的技术可以改变屏幕亮度 其中两个在纸杯蛋糕之后不再起作用 而第三个被接受的技术显然有一个错误 我想在单视图活动开始时增加屏幕亮度 然后在活动结束时将亮度恢复为用户设置 没有按钮 没有第二个视图或
  • Android 套接字和 asynctask

    我即将开始制作一个应该充当 tcp 聊天客户端的应用程序 我一直在阅读和阅读 我得出的结论是最好 如果不需要 将我的套接字和异步任务中的阅读器 问题是我不确定从哪里开始 因为我是 Android 新手 这至少对我来说是一项艰巨的任务 但据我
  • 将两个文本视图并排放置在布局中

    我有两个文本视图 需要在布局中并排放置 并且必须遵守两条规则 Textview2 始终需要完整显示 如果布局中没有足够的空间 则必须裁剪 Textview1 例子 文本视图1 文本视图2 Teeeeeeeeeeeeeeeeeextview1

随机推荐

  • 如何使用 JAXB 删除 XML 中的标签

    我正在使用 JAXB 将 java 对象转换为 xml 文件 在我的 XML 文件中 我需要删除标签不使用 XSLT 例如 删除标签订单
  • 如何在 Spring 中注入具有受保护方法的 JDK 代理类?

    我的情况相当奇怪 我使用 Spring 3 0 6 和一个实现和接口的 bean 到目前为止 都是很正常的事情 我的 bean 也有一些受保护的方法 我正在使用一些 AOP JDK 代理 一切正常 当我想将此 bean 注入另一个包类时 我
  • Angular 测试获取实际的 HTTP 响应

    我是角度单元测试的新手 我想要做的是从我的 API 获取实际结果 我检查了this https angular io guide http testing http requests文档 但据我了解 我应该创建模拟响应 这是我的代码 myS
  • Visual Studio Code 有“后退”按钮吗?

    When I Cmd click在函数的执行行 f 它带我到定义函数的地方 f 既然我已经看完了这个功能 如果有一个 后退 按钮可以回到之前的位置就太好了 有谁知道这样的功能或有帮助的功能 附 我在 Mac 上 在 Windows VS C
  • Java ME 日历不显示

    我一直在这里关注本教程 教程链接 http www developer nokia com Community Wiki Building a Java ME Canvas based calendar date picker 但我似乎无法
  • 如何使用 Sphinx 标记引用记录的 Python 函数参数?

    我想在 Python 文档字符串中的其他位置引用先前记录的函数参数 考虑以下 诚然完全是人为的 示例 def foo bar Perform foo action param bar The bar parameter def nested
  • RubyMine 2.0 作为 Rails IDE 能赚 99 美元吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我最近看到很多博客都在谈论 RubyMine 它是同类最佳的 Rails IDE 目前 我正在使用 NetBeans IDE 来处理 Ruby
  • 对包含数字的 JavaScript 字符串数组进行排序

    我有一个 JavaScript 数组 其中包含以下内容 值 1 值 5 值10 值11 我将如何对该数组进行排序 使其不会出现如下所示 值 1 值 10 值11 值5 But as 值 1 值 5 值10 值11 任何帮助都会很棒 您需要从
  • 服务层=应用层=GRASP控制器层[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我认为服务 应用程序层与 Larman 描述的 GRASP 控制器相同 是 GUI 层之外委托给域层的
  • 在python中迭代两个不同大小的列表

    Value 1 2 3 4 5 6 content a b c d for a b in itertools zip longest Value content print a b 我使用上面的代码得到的输出如下 1 a 2 b 3 c 4
  • 如何从 pandas 数据框中的当前行中减去前一行并将其应用到每一行;不使用循环?

    我正在使用 Python3 5 并且正在使用 pandas 我已从雅虎财经加载股票数据并将文件保存为 csv 我的 DataFrames 从 csv 加载此数据 这是我的 DataFrame 的 csv 文件的十行的副本 Date Open
  • Matplotlib:曲线重叠时如何防止透明颜色叠加?

    例如我们在这里绘制一条透明颜色的线 import numpy as np import matplotlib pyplot as plt a np array 1 2 3 4 5 b 2 a plt plot a b blue alpha
  • 如何从 Mysql 数据库获取数据到 Snowflake

    有什么聪明的方法可以将我的数据从 mysql 数据库导入到雪花中吗 到目前为止我发现了两种可能的方法 选项 1 将 Snowpipe 放在 mysql 数据库之上 管道会自动转换数据 选项 2 我手动将表转换为 csv 并将其存储在本地 然
  • Typescript 类型转换不起作用

    我对 TypeScript 还很陌生 我从一本名为 Typescript Revealed 2013 年 2 月出版 的书开始 第 2 章中有一个名为 Casts 的部分 其中包含以下示例 var a int
  • 为什么我的 Cordova WebView 有额外的 20px 滚动?

    我正在构建一个 Cordova 应用程序 并在我的 iOS 6 设备 带有 iOS 6 1 6 的 iPod Touch 上测试它 由于某种原因 WebView 可以额外滚动 20px 似乎弥补了屏幕顶部 20px 的状态栏 这有时会导致可
  • 宏和文本框代码疑难解答

    我有一个工作宏 它循环遍历文件夹以打开文件 并从名称 HOLDER 和 CUTTING TOOL 列中获取重要信息 并将所有信息打印到一个 Excel 文档 主文件 中 我创建了一个带有 搜索按钮的文本框 我可以在其中输入一个文件名 它将转
  • Python 按给定顺序将多个文件附加到一个大文件

    我有多达 8 个单独的 Python 进程在共享文件夹中创建临时文件 然后我希望控制进程将所有临时文件按一定顺序附加到一个大文件中 在与操作系统无关的 shell 级别执行此操作的最快方法是什么 只需使用简单的文件 IO tempfiles
  • 快速向按钮添加手势

    我正在尝试向视图中的现有按钮添加手势 滑动 功能 但我不知道如何将滑动附加到按钮区域 理想的效果是有一个按钮 我可以按下并滑动以产生不同的结果 到目前为止 我实现手势的方式将其应用于我的整个视图 而不仅仅是按钮 我有一种感觉 这很简单 但几
  • 更改框架时出现 ArgumentNullException

    所以我正在尝试更改 Windows 8 应用程序中的框架 我尝试按照以下教程进行操作这一页 http www c sharpcorner com UploadFile 99bb20 passing multiple values betwe
  • 如何自定义布局(高度和宽度)以及布局的容器?

    I have created a TableLayout with two rows where first row has one TextView and second row has two columns first one has