如何在约束布局1.0中居中

时间:2019-04-06 16:18:59

标签: android center android-constraintlayout layout-gravity

我在ConstraintLayout中有一个视图(FrameLayout)

(仅适用于平板电脑设备)我要具有此配置

    version: "3"

networks:
  xukashopnet:
    driver: bridge
    ipam:
      driver: default
      config:
        - subnet: 10.0.5.0/16
#       gateway: 10.0.5.1
services:
  xukashop-database:
    image: mysql:8
    container_name: xukashop-db
    ports:
      - "8091:3306"
      - "33061:33060"
    restart: always
    volumes:
      - ./db_data:/var/lib/mysql
      - .:/xukashop
    environment:
      - MYSQL_ROOT_PASSWORD=12345678
      - MYSQL_DATABASE=xukashop
      - MYSQL_USER=admin
      - MYSQL_PASSWORD=123456789
    networks:
      xukashopnet:
        ipv4_address: 10.0.5.2
  xukashop-api:
    build:
      context: ./
      dockerfile: Dockerfile
    environment:
      - XUKA_SHOP_DATABASE_HOST=10.0.5.2
      - XUKA_SHOP_DATABASE_PORT=3306
      - XUKA_SHOP_DATABASE_NAME=xukashop
      - XUKA_SHOP_DATABASE_USERNAME=admin
      - XUKA_SHOP_DATABASE_PASSWORD=123456789
    restart: always
    ports:
      - 8080:8080
    links:
      - xukashop-database
    depends_on:
      - xukashop-database
    volumes:
      - .:/xukashop
    stdin_open: true
    tty: true
    networks:
      xukashopnet:
        ipv4_address: 10.0.5.3
volumes:
  db_data:

我有义务使用约束布局版本1.0

我已尝试将“顶部-底部”(Top-Bottom)用于其父级约束,但与父级的顶部对齐。

我尝试更改1) its max height to say 100dp 2) It has to be wrap content 3) It has to be centered in its parent (vertically and horizontally). ,但将其设置为app:layout_constraintHeight_default =“ spread”`违反了包装内容要求。

这是我的非平板电脑布局,我了解我只想将平板电脑放在app:layout_constraintHeight_default="wrap"资源文件夹下的所有内容。

values-sw600dp

我该如何解决?

enter image description here

1 个答案:

答案 0 :(得分:0)

由于您希望视图居中,因此不需要所有这些边距:

<FrameLayout
    android:id="@+id/viewToCenter"
    android:layout_width="0dp"
    android:layout_height="0dp"
    app:layout_constraintHeight_default="wrap"
    app:layout_constraintWidth_default="wrap"
    app:layout_constraintHeight_max="100dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent">
</FrameLayout>

我添加了以下属性:

app:layout_constraintHeight_default="wrap"
app:layout_constraintWidth_default="wrap"

并更改为:

android:layout_width="0dp"