1. 环境搭建
总体感觉不智能不稳定,特别乱特别大,占用内存特别多
Android Studio 开发零基础入门到精通全套【bilibili】
1.1 安装
最新的版本创建工程时默认的语言只能是kotlin,下载4.2.2版本
完全删除方法:
1、把c:\用户\xxx\下的.gradle .android文件夹删除
2、把c:\用户\xxx\AppData\Local\Google下的AndroidStudio文件夹删除
1.2 创建模拟器时"a system image must be selected"
明明是选择了,问题出在下载ASK(Android SDK)时,没下全。
File -> Settings -> Appearance & Behavior -> System Settings -> Android SDK下,先勾上show detail,再下载没下全的。
1.3 编译报错:Installed Build Tools revision 33.0.0 is corrupted. Remove and install again
先把Android结构下gradle(module)配置改为低版本30.03的Build Tool(如果不修改gradle配置,编译时会自动下载指定的33.0.0构建工具),如下图:
而后在ADK管理中选择安装30.0.3版本的构建工具:
2. 基本使用
2.1 快捷键
ctrl+shift+F 全局搜索
ctrl+alt+s 设置settings
ctrl+alt+</> 前进/后退
ctrl+alt+v 为函数生成返回值
Alt+Insert Generate
Ctrl+J 快捷代码
ctrl+I 完成代码
2.2. 打印输出
Log.e("info", "onClick"); //在run、Logcat中都输出,Logcat中过滤一下
System.out.println("print onClick();"); //只在run中显示
2.3 TextWiew
px:pixels 像素
pt:point 1pt=1/72英寸
dp:(dip:device independent pixels)设备独立像素
sp:(scscaled pixels)放大像素,用于字体
xmlns:(XML Namespaces)是一个属性,是XML(标准通用标记语言的子集)命名空间。作用是赋予命名空间一个唯一的名称。
//属性
android:layout_width 组件宽度 sp
android:layout_height 组件高度
android:id 组件id
android:text 文本内容
android:textColor 字体颜色
android:textStyle 字体风格(normal、bold、italic)
android:textSize 字体大小 dp
android:background 背景颜色
android:gravity 对齐方向
android:sigleLine 单选显示
android:focusable 是否可以获取焦点
android:focusableInTouchMode 触摸模式下中否取得焦点
android:ellipsize 省略文本位置
android:marqueeRepeatLimit 字幕动画重复次数
2.4 button
修改background无效
// res/values/themes.xml下加个.Bridge
<style name="Theme.FirstAndroidApp1" parent="Theme.MaterialComponents.DayNight.DarkActionBar.Bridge">
2.5 EditText
2.6 ImageView
2.7 ProgressBar
2.8 Notification
2.9 Toobar
2.10 AlertDialog
2.11 PopupWindow
2.12 LinearLayout
orientation 子控件排列方式
gravity 子元素的对齐方式
layout_gravity 布局在父容器里的对齐方式
background 背景图片或颜色
divider 分割线
showDividers 分割线位置
dividerPadding 分割线的Padding
layout_weight 等比例划分剩余空间
2.13 RelativeLayout
//根据父容器定位
layout_alignParentLeft
layout_alignParentRight
layout_alignParentTop
layout_alignParentBottom
layout_centerHorizontal
layout_centerVertical
layout_centerInParent
//根据兄弟组件定位
layout_toLeftOf
layout_toRightOf
layout_above
layout_below
layout_alignTop
layout_alignBottom
layout_alignLeft
layout_alignRight
//margin是外部与父容器的边距
layout_magin
layout_marginLeft
layout_marginRight
layout_marginTop
layout_marginBottom
//padding是内部与子容器的边距
padding
2.14 FrameLayout
是相对于左上角重叠的
android:foreground
android:foregroundGravity
2.15 TableLayout
android:collapseColumns 允许隐藏的列号
android:stretchColumns 允许拉伸的列号
android:shrinkColumns 允许收缩的列号
//子控件属性
android:layout_column 显示在第几列
android:layout_span 横跨几列
<TableLayout>
<TableRow />
</TableLayout>
2.16 GridLayout
android:orientation 排列方式
android:columnCount 行数
android:rowCount 列数
//子控件属性
android:layout_column 显示在第几列
android:layout_columnSpan
android:layout_columnWeight
android:layout_gravity
android:layout_rowSpan
android:layout_rowWeight
2.17 ConstraintLayout
没有约束时,都是在左上角
2.18 ListView
2.19 RecyclerView
在build.gradle的dependencies中添加依赖:
implementation 'androidx.recyclerevies:recyclerview:1.1.0'
2.20 动画
1、帧动画
2、补间动画(alpha、rotate、scale、translate)
3、属性动画
转载:https://blog.csdn.net/pzs0221/article/details/127744222