# 项目简介
项目名称 Daydreamer(白日梦想家)
目标用户 热爱艺术的非专业白日梦想家
项目内容 个性化的个人艺术作品集
用户流程
graph TD
Start---Login
Start---Register
Login---Homepage
Register---Mainpage
Homepage---Painting
Homepage---Design
Homepage---Cutting
Homepage---Handwork
Homepage---Homepage
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# 学习记录(-)
# 布局
# 去掉标题栏和导航栏
Welcome.java
//隐藏标题栏以及状态栏,写在oncreate里面
//这里一定要注意 这些操作要在setContentView方法前操作
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
/**标题是属于View的,所以窗口所有的修饰部分被隐藏后标题依然有效,需要去掉标题**/
requestWindowFeature(Window.FEATURE_NO_TITLE);
1
2
3
4
5
6
7
2
3
4
5
6
7
这个时候只去掉了导航栏没有去掉标题栏,也不知道为什么
Styles.xml
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
1
这样就去掉了这个 project 的所有标题栏,不要担心菜单栏,popupmenu 在哪都可以放
# 在 adroid studio 中使用本地 svg icon
app/build.gradle
android {
defaultConfig {
//vector to svg, and need
vectorDrawables.useSupportLibrary = true
}
}
dependencies {
implementation 'com.android.support:appcompat-v7:28.0.0'
}
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# 简单的 android icon 动画
public class AnimationActivity extends AppCompatActivity {
private ImageView imageView; //创建图片对象
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_animation);
imageView = (ImageView) findViewById(R.id.img); //连接图片id
//简单动画操作
ObjectAnimator translationY = ObjectAnimator.ofFloat(imageView, "translationY", 0, 500f); //平移
ObjectAnimator alpha = ObjectAnimator.ofFloat(imageView, "alpha", 0f, 1f); //逐渐进入
ObjectAnimator rotation = ObjectAnimator.ofFloat(imageView, "rotation", 0f, 360f); //原地旋转
ObjectAnimator scaleY = ObjectAnimator.ofFloat(imageView, "scaleY", 2f, 1f); //沿y轴移动
ObjectAnimator scaleX = ObjectAnimator.ofFloat(imageView, "scaleX", 2f, 1f); //沿x轴移动
AnimatorSet animSet = new AnimatorSet();
animSet.playTogether(translationY, alpha, rotation, scaleY, scaleX); //动画控制
animSet.setDuration(3000); //动画持续时间
animSet.start();
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# 实现圆角 button 及输入框
在 drawable 文件夹下新建(最好复制粘贴一个那个文件夹下的 xml,改名,重写)
shape_button.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<!-- 填充的颜色 -->
<!--solid android:color="#0000ff" /-->
<!-- 设置按钮的四个角为弧形 -->
<!-- android:radius 弧形的半径 -->
<corners android:radius="10dip" />
<!-- padding:Button里面的文字与Button边界的间隔 -->
<padding
android:bottom="10dp"
android:left="10dp"
android:right="10dp"
android:top="10dp" />
</shape>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
shape_edit_blue.xml
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape>
<stroke android:width="0.5dp" android:color="#415383" /><!--边框颜色-->
<solid android:color="#ffffff" /><!--填充色-->
<!--corners android:radius="10dip" /-->
<padding
android:bottom="10dp"
android:left="10dp"
android:right="10dp"
android:top="10dp" />
</shape>
</item>
</layer-list>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 输入框下划线颜色调整
style.xml
<style name="MyEditText" parent="Theme.AppCompat.Light">
<item name="colorControlNormal">@color/indigo</item>
<item name="colorControlActivated">@color/pink</item>
</style>
1
2
3
4
2
3
4
在对应 layout 中添加
android:theme="@style/MyEditText"
1