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

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(使用前将#替换为@)

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

  • Firebase 管理 SDK Android

    在 Android 中初始化 Firebase Admin SDK 的代码 Override protected void onCreate Bundle savedInstanceState super onCreate savedIns
  • Android 应用程序在后台运行时保存数据

    目前我正在开发 xmmp 客户端 当应用程序位于前台时 该客户端工作得很好 但由于事实上 当应用程序处于后台时 我在 Application 类中保存了大量数据 复杂的 ArrayList 字符串和布尔值作为公共静态 每个字段都被垃圾收集
  • Firebase Analytics 禁用受众国家/地区跟踪

    我正在开发一个严格不允许位置跟踪的应用程序 我想使用 Firebase Analytic 的其他功能 例如 PageTransitions 和 Crashalitics 但如果我无法禁用受众位置跟踪 我就无法使用其中任何功能 这是我在 An
  • 如何将安卓手机从睡眠状态唤醒?

    如何以编程方式将 Android 手机从睡眠状态唤醒 挂起至内存 我不想获取任何唤醒锁 这意味着手机在禁用 CPU 的情况下进入 真正的 睡眠状态 我想我可以使用某种RTC 实时时钟 机制 有人有例子吗 Thanks 为了让Activity
  • 为什么将函数参数声明为最终的?

    我目前正在阅读 Sams 出版的 24 小时自学 Android 应用程序开发 一书 我对 Java Android 或其他方面还比较陌生 我对 ActionScript 3 有非常扎实的背景 它与 Java 有足够的相似之处 因此该语言本
  • 无法在自定义 AOSP 上安装 Google Play 中的某些应用程序:项目不可用。理由:9

    我在尝试从 Google Play 安装某些应用程序时收到以下错误 LibraryUtils isAvailable not available restriction 9 DocUtils getAvailabilityRestricti
  • 如果我们使用后退按钮退出,为什么 Android 应用程序会重新启动?

    按住主页按钮并返回应用程序时 应用程序不会重新启动 为什么使用后退按钮会重新启动 如果我们使用后退按钮退出 有什么方法可以解决在不重新启动的情况下获取应用程序的问题吗 请帮忙 当您按下Home按钮 应用程序将暂停并保存当前状态 最后应用程序
  • 已经使用 AsyncTask doInBackground 但新数据未显示

    我使用 AsyncTask 创建一个聊天室来接收消息 因此它总是检查即将到来的消息并将其显示给客户端 但代码似乎无法按我希望的方式工作 在客户端只显示所有旧数据 新数据不显示 因为当我尝试从服务器发送消息时 新数据没有显示在客户端中 我对这
  • 请求位置更新参数

    这就是 requestLocationUpdates 的样子 我使用它的方式 requestLocationUpdates String provider long minTime float minDistance LocationLis
  • ROOM迁移过程中如何处理索引信息

    CODE Entity tableName UserRepo indices Index value id unique true public class GitHubRepo PrimaryKey autoGenerate true p
  • 使用 Matrix.setPolyToPoly 选择位图上具有 4 个点的区域

    我正在 Android 上使用位图 在使用 4 个点选择位图上的区域时遇到问题 并非所有 4 点组都适合我 在某些情况下 结果只是一个空白位图 而不是裁剪后的位图 如图所示 并且 logcat 中没有任何错误 甚至是内存错误 这是我用来进行
  • Android Webview 图像未加载

    我制作了一个简单的应用程序WebView 但有些图片无法加载 正确 在我的电脑上 错误 在模拟器中 Correct 错误 没有横幅 于是我用Chrome debug进行调试 发现我的代码被改变了 我不添加像noscript or style
  • 在 Android 上按下电源按钮时,如何防止先调用 onDestroy() 再调用 onCreate()

    我正在记录每个 onCreate 和 onDestroy 调用 我发现 一旦我单击 Android 上的电源按钮 以及模拟器上的电源按钮 我的活动中就会拨打电话 gt onDestroy gt onCreate 这会杀死我的游戏 然后立即从
  • 应用程序关闭时的倒计时问题

    我制作了一个 CountDownTimer 代码 我希望 CountDownTimer 在完成时重新启动 即使应用程序已关闭 但它仅在应用程序正在运行或重新启动应用程序时重新启动 因此 如果我在倒计时为 00 10 分钟 秒 时关闭应用程序
  • 使用 Espresso 检查 EditText 的字体大小、高度和宽度

    如何使用 Espresso 检查 EditText 的字体大小 高度和宽度 目前要分割我使用的文本 onView withId R id editText1 perform clearText typeText Amr 并阅读文本 onVi
  • android Accessibility-service 突然停止触发事件

    我有一个 AccessibilityService 工作正常 但由于开发过程中的某些原因它停止工作 我似乎找不到这个原因 请看一下我的代码并告诉我为什么它不起作用 public class MyServicee extends Access
  • 如何将图像从 Android 应用程序上传到网络服务器的特定文件夹中

    如何将图像从 android 移动到 Web 服务器上的指定文件夹 这是我的安卓代码 package com example bitmaptest import java io ByteArrayOutputStream import ja
  • 为什么Android的ImageReader类这么慢?

    我尝试了适用于 Android 3 4 1 的全新 OpenCVJavaCamera2View但它太慢了 仅显示相机视图约 15 fps 当我尝试较旧的JavaCameraView相反 它给了我很好的结果 30fps 这是我相机的极限 我想
  • 如何删除因 Google Fitness API 7.5.0 添加的权限

    将我的 play services fitness api 从 7 0 0 更新到 7 5 0 后 我注意到当我将新版本上传到 PlayStore 时 它 告诉我正在添加一个新权限和 2 个新功能 我没有这样做 有没有搞错 在做了一些研究来
  • 找到 Android 浏览器中使用的 webkit 版本?

    有没有办法知道某些特定手机上的 Android 浏览器使用的是哪个版本的 webkit 软件 如果有一个您可以浏览以获取该信息的 URL 那就太好了 但任何其他方式也很好 如果你知道 webkit 版本 你就知道 html5 支持多少 至少

随机推荐

  • 如何使用 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