1,Android Studio 版本的选择

写这篇的时候,官方版本已经到了 v3.2.0,而我习惯使用的版本是 v2.3.1,因为这个版本有自带sdk的安装版,比较方便,

同时,v2.3.1 新建项目是用的Gradle v3.3 版本

2,各种东西的版本问题

AS相较于Eclipse而言,AS最恶心的东西莫过于各种东西的版本号对应关系,错一点儿都各种异常,v2.3.1的一些默认版本信息:

apply plugin: 'com.android.application'

android {
compileSdkVersion
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "com.sungong1987.helloandroid"
minSdkVersion
targetSdkVersion
versionCode
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
} dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha7'
testCompile 'junit:junit:4.12'
}

build.gradle

为什么要记录这个呢?因为有些时候,莫名其妙的新建出来的gradle文件会有问题,要把这几个版本的数字该成默认的项目才会成功

3,关于menu

这个版本新建项目时是没有menu资源的,新建如下:

首先,res → 右键 → New → Android resources directory → Resource type → menu,然后就在res里添加了一个menu文件夹

然后,在刚建立的 menu → 右键 → New → Menu resource file

4,关于 menu.xml 的 showAsAction 属性的特殊说明

因为版本的问题,所以注意如下配置:

xmlns:app="http://schemas.android.com/apk/res-auto"
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"> <item
android:id="@+id/action_add"
app:showAsAction="ifRoom|withText"
android:title="@string/action_add" /> <item
android:id="@+id/action_del"
app:showAsAction="never"
android:orderInCategory=""
android:title="@string/action_del" /> <item
android:id="@+id/action_set"
app:showAsAction="never"
android:orderInCategory=""
android:title="@string/action_set"/> </menu>

menu.xml

sdk4.2之后如下设置

在代码中:

以上图片转自 https://blog.csdn.net/rosener/article/details/52638492

always:总是显示在界面上
never:不显示在界面上,只让出现在右边的三个点中
ifRoom:如果有位置才显示,不然就出现在右边的三个点中

5,Android 中 tools:ignore="UselessParent" 这个属性的含义

这个属性是给lint检查工具看的,这个告诉IDE 以避免显示这样一条消息: "此 RelativeLayout 布局或其 LinearLayout 父是无用"

6,android:orderInCategory="100" 属性说明

设置优先级,值越大优先级越低

7,LayoutInflater中inflate方法两个参数和三个参数的区别

https://blog.csdn.net/u012702547/article/details/52628453

Android Studio 一些注意事项(自用,不定期更新)的更多相关文章

  1. Android Studio经常使用操作技巧(不断更新)

    这段时间一直在用Android Studio做一些Demo的开发.一開始从Eclipse中转向这个开发工具,各种不适应,希望此博文能够一直更新.还有网友能够分享出自己方便更好更快开发的一些技巧. 首先 ...

  2. 更新Android Studio,提示后直接点更新即可。gradle 两种更新方法,我用的第二种:手动添加gradle

    直接更新即可. 更新完毕后,随即会让你更新gradle,但是会一直更新一直更新...... 解决方法: 第一种方法: 手动下载Android Studio 对应的 gradle版本,然后设置一下即可. ...

  3. Android Studio的安装使用记录[持续更新]

    参考资料: Windows环境下Android Studio v1.0安装教程 http://ask.android-studio.org/?/article/9 1. 下载与安装 在http://w ...

  4. Android Studio快捷键指南(本文持续更新)

    这是我在使用Android Studio过程中接触到的一些快捷键,和大家分享,后面会继续完善此文,也欢迎大家踊跃补充,一起完善. 快捷键 删除并剪贴行:Ctrl+X 复制一行:Ctrl+D 代码格式整 ...

  5. Android Studio 问题锦集【持续更新】

    想必,大家在使用Android Studio(后面简称AS)的过程中会遇到各种各样的问题,现在,我也来谈谈我在使用AS过程中遇到的错误. 1.Plugin with id 'com.android.a ...

  6. 关于ionic4导入android studio的注意事项

    最近看IT营的视频的时候,发现视频讲解的打包真是轻松的不得了,但是当自己导入打包的时候,你就会发现,没有最坑,只有更坑,按照教程来打包,估计你这辈子很难还原成功的,下面就来说一下关于 gradle与g ...

  7. android webview一些注意事项(持续更新)

    1.loadUrl() 的参数必须“http://”开头: 2.如果用到内部类获取页面内容,此类不能混淆: 3.2中情况保持不混淆需要将webview所在的包都保持不混淆,常规的保持类不混淆不生效: ...

  8. c++debug&注意事项 自用 持续更新

    cin后回车程序直接退出: 加system("pause");在return 0;前面 C++ 控制cout输出的小数位数 C++中的cout.setf().cout.precis ...

  9. Android Studio更新升级方法

    自从2013 Google I/O大会之后,笔者就将android ide开发工具从eclipse迁移到Android Studio了,android studio一直在更新完善,为了与时俱进,我们当 ...

随机推荐

  1. hdu 2485 Destroying the bus stations 最小费用最大流

    题意: 最少需要几个点才能使得有向图中1->n的距离大于k. 分析: 删除某一点的以后,与它相连的所有边都不存在了,相当于点的容量为1.但是在网络流中我们只能直接限制边的容量.所以需要拆点来完成 ...

  2. 深入理解DIP、IoC、DI以及IoC容器(转载)

    <转载的这个up的其他的文章也很nice> 这几个词第一眼看,懵逼,第二眼看,更特么懵逼..... 面向对象设计(OOD)有助于我们开发出高性能.易扩展以及易复用的程序. 其中,OOD有一 ...

  3. 重载(overload)和重写(override)的对比(笔试经常出)

    Day04_SHJavaTraing_4-6-2017 1.重载(overload):    ①权限修饰符(public private 默认):        无关    ②返回值类型:       ...

  4. PCL:解决PCL和OpenCV冲突的方法

    不是PCL的问题,而是OpenCV的问题. (1):先包含PCL库,再包含OpenCV库: (2):把里面的UCHAR冲突全部换掉!  如果你有闲情逸致,用正则表达式 慢慢替换去吧! (3):或者把F ...

  5. UVa340未完成

    #include<stdio.h> #define maxn 1010 int main() { ; while(scanf("%d",&num)!=EOF&a ...

  6. Be born

    2018-07-22 16:22:03 Cherry is being greater and greater!

  7. Hive sql

    1.DDL操作 1.1 建表 CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_ ...

  8. 第n个质数

    //注:for循环之后第三个式子总会操作一遍. #include <iostream> using namespace std; int main() { int n; while (ci ...

  9. C#中的DES加密

    publicstaticstringEncryptString(string sInputString,string sKey,string sIV) { try { byte[] data =Enc ...

  10. C语言实现使用动态数组实现循环队列

    我在上一篇博客<C语言实现使用静态数组实现循环队列>中实现了使用静态数组来模拟队列的操作. 因为数组的大小已经被指定.无法动态的扩展. 所以在这篇博客中,我换成动态数组来实现. 动态数组能 ...