AndroidStudio更换ConstraintLayout布局

栏目: 编程工具 · Android · 发布时间: 6年前

内容简介:本文是自从 AndroidStudio 到 2.3 了以后,新建一个 Activity,默认的布局就从以前的

版权声明

本文是 开源实验室 原创文章,转载请以 链接 形式注明地址: https://kymjs.com/2018/09/09/01

对本知识点有任何问题,可加我的个人微信:kymjs123

自从 AndroidStudio 到 2.3 了以后,新建一个 Activity,默认的布局就从以前的 LinearLayout 变成了 Google 强推的 ConstraintLayout ,但其实这个布局是可以被修改的。

在 Mac 上改默认布局(Windows可以自己找对应的目录),需要编辑这个文件:

/Applications/Android\ Studio.app/Contents/plugins/android/lib/templates/activities/common/root/res/layout/simple.xml.ftl

同时附赠一个 AndroidStudio 中使用 Kotlin 默认的依赖是依赖了 kotlin-jre ,而这个 jre 早就被改 jetbrain 废弃了,修改 jre 为 jdk 可以编辑这个文件。

Applications/Android\ Studio.app/Contents/plugins/android/lib/templates/activities/common/kotlin_macros.ftl

下面是我自己使用的两个文件的内容,你可以直接复制走:

// simple.xml.ftl 文件的

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/root_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <Button
        android:id="@+id/button"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Button"/>

</LinearLayout>

// kotlin_macros.ftl 文件的

<#-- Macro used to add the necessary dependencies to support kotlin to
an app build.gradle -->

<#macro addKotlinPlugins>
<#if generateKotlin>
<#compress>
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
</#compress>
</#if>
</#macro>

<#macro addKotlinDependencies>
<#if generateKotlin>${getConfigurationName("compile")} "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"</#if>
</#macro>

// TODO: <apply plugin /> Is adding the dependencies at the *end* of build.gradle
// TODO: The two macros above, addKotlinPlugins and addKotlinDependencies, are duplicating the work of addAllKotlinDependencies, when
//       creating a new project (isNewProject == true). The only reason is the above bug on <apply plugin />
<#macro addAllKotlinDependencies>
  <#if (language!'Java')?string == 'Kotlin'>
    <#if !isNewProject>
      <apply plugin="kotlin-android" />
      <apply plugin="kotlin-android-extensions" />
    </#if>
    <#if !hasDependency('org.jetbrains.kotlin:kotlin-stdlib')>
        <dependency mavenUrl="org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"/>
        <merge from="root://activities/common/kotlin.gradle.ftl"
                 to="${escapeXmlAttribute(projectLocation)}/build.gradle" />
    </#if>
  </#if>
</#macro>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Head First HTML与CSS(第2版)

Head First HTML与CSS(第2版)

Elisabeth Robson、Eric Freeman / 徐阳、丁小峰 / 中国电力出版社 / 2013-9 / 98.00元

是不是已经厌倦了那些深奥的HTML书?你可能在抱怨,只有成为专家之后才能读懂那些书。那么,找一本新修订的《Head First HTML与CSS(第2版)》吧,来真正学习HTML。你可能希望学会HTML和CSS来创建你想要的Web页面,从而能与朋友、家人、粉丝和狂热的顾客更有效地交流。你还希望使用最新的HTML5标准,能够保证随时间维护和扩展你的Web页面,使它们在所有浏览器和移动设备中都能正常工......一起来看看 《Head First HTML与CSS(第2版)》 这本书的介绍吧!

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换