问题 android studio项目中没有dimens.xml


我在笔记本电脑上安装了Android Studio 2.2.2。然后我最近更新了它。但是当我创建一个空项目时,项目上没有dimens.xml。而当我使用Android Studio 2.2.2时,有一个维度目录(使用2 dimens.xml)。我的Android Studio会发生什么?


12675
2018-03-08 09:33


起源

你可以自己创建它 values 夹。 - miljon
那么,我的android工作室坏了吗? - RiefSapthana
很难说,但尝试将其更新到最新版本并重新启动android studio,并创建新项目。但如果它不存在(dimen文件)你可以创建它,并开始工作;) - miljon
如果需要dimens.xml,只需在res / values文件夹下创建一个 - Gabriele Mariotti


答案:


你的Android Studio很好。从2.3开始,默认的Activity布局模板有一个 ConstraintLayout 作为根元素,没有应用边距。在旧模板中,这曾经是一个 RelativeLayout 将其边距设置为资源值 dimens.xml。由于这些值不再位于默认布局文件中,因此为空 dimens.xml 默认情况下不在项目中创建。

如果你需要一个 dimens.xml,你可以在下面创建一个 res/values 文件夹 New -> Values resource file


供参考,使用旧的默认布局 dimens 资源:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.package.MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!" />

</LinearLayout>

并且没有的新默认值:

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.package.MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

</android.support.constraint.ConstraintLayout>

13
2018-03-08 09:46



是的,但是它的原因是什么以及如何在创建项目时自动创建它。 - Rakesh Yadav
这就是新模板的方式。你必须创造 dimens.xml 从现在开始为自己。 - zsmb13
有关于此的官方文件吗? - Rakesh Yadav