### LinearLayout基础属性(线性)

1. orientation:布局中组件的排列方式 vertical纵向排列 horizontal横向排列
2. gravity:控制组件所包含的子元素的对齐方式,可多个组合
3. layout_gravity:控制该组件在父容器里的对其方式
4. background:为该组件设置一个背景图片,或者是直接用颜色覆盖usa
5. divider:分割线
6. showDividers:设置分割线所在的位置 none(无) beginning(开始) end(结束) middle(每两个组件间)
7. dividerPadding:设置分割线的 padding
8. layout_weight:(权重)该属性是用来等比例的划分区域

### RelativeLayout基础属性(相对)

* 根据父容器定位:

1. layout_alignParentLeft:左对齐
2. layout_alignParentRight:右对齐
3. layout_alignParentTop:顶部对齐
4. layout_alignParentBottom:底部对齐
5. layout_centerHorizontal:水平居中
6. layout_centerVertical:垂直居中
7. layout_centerlnParent:中间位置

* 根据兄弟组件定位:

1. layout_toLeftOf:放置于参考组件的左边
2. layout_toRightof:放置于参考组件的右边
3. layout_above:放置于参考组件的上方
4. layout_below:放置于参考组件的下方
5. layout_alignTop:对齐参考组件的上边界
6. layout_alignBottom:对齐参考组件的下边界
7. layout_alignLeft:对齐参考组件的左边界
8. layout_alignRight:对齐参考组件的右边界

* 设置组件与父容器的边距:

1. layout_margin:上下左右偏移
2. layout_marginLeft:左偏移
3. layout_marginRight:右偏移
4. layout_marginTop:上偏移
5. layout_margiBottom:下偏移

通过使用 padding 可以在父容器中设置组件内部元素相对于父容器的边距

### FrameLayout基础属性(帧)

1. android:foreground:设置前景
2. android:foregroundGravity:设置前景位置

framelayout为帧布局,后面的帧会将前面的帧覆盖

### TableLayout基础属性(表格)

1. android:collapseColumns:设置需要被隐藏的列的序号,从o开始
2. android:stretchColumns:设置允许被拉伸的列的列序号,从o开始
3. android:shrinkColumns:设置允许被收缩的列的列序号,从o开始

* 子控件属性:

1. android:layout_column:显示在第几列
2. android:layout_span:横向跨几列(列合并,但不能合并行)

### GridLayout基础属性(网格)

1. android:orientation:设置水平显示还是垂直显示
2. android:columnCount:设置行的显示个数
3. android:rowCount:设置列的显示个数

* 子控件属性:

1. android:layout_column:显示在第几列
2. android:layout_columnSpan:横向跨几列
3. android:layout_columnWeight:横向剩余空间分配方式
4. android:layout_gravity:在网格中的显示位置
5. android:layout_row:显示在第几行
6. android:layout_rowSpan:横向跨几行
7. android:layout_rowWeight:纵向剩余空间分配方式

### 快捷键

1. Ctrl+Alt+L:自动格式化代码
2. Ctrl+D:向下复制当前行代码
3. Alt+Enter:选项扩展
4. 按住Ctrl后鼠标左键单击代码可跳转到相关文件
5. 使用`Log.e("AAA", "BBB: "+CCC );` 在logcat输出日志,AAA为查找标志,BBB位自定义提示,CCC位输出的内容

* 简单点击事件:

先在xml文件中创建好按键并给按键添加id,之后在java文件的OnCreate函数中使用 `findViewById(R.id.ID) `调用,最后创建点击监听事件:

```
setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Log.e("XXX", "onClick: 被点击了" );
}
});
```

或在xml的按键设置中创建点击函数 `android:onClick="XXXClick"` 并在java文件中调用:

```
public void XXXClick(View view) { Log.e("XXX", "onClick: 被点击了" );}
```

### Project工程结构

1. app:存放项目的代码和资源
2. app-build:使用makeproject后生成的文件
3. app-libs:存放第三方资源
4. app-src-androidTest:编写安卓测试用例
5. app-src-main:工程主要文件存放目录
6. app-src-proguard-rules.pro:编写混淆类
7. gradle:构建器
8. build.gradle:全局构建脚本
9. gradle.properties:全局配置文件
10. gradlew:linux构建组件
11. gradlew.bat:window构建组件
12. local.properties:SDK路径
13. settings.gradle:指定项目中所有引用的模块
14. External Libraries:第三方库

注意:UI中文字、背景、主题等的设定应当在src-main-res-values文件夹中的几个文件中设定,之后在activity_main.xml 中使用 `android:text="@string/` 调用

届ける言葉を今は育ててる
最后更新于 2023-01-27