Android Studio开发之路(六)(合集)界面优化以及启动图标等

一、导航栏背景、字体修改

导航栏、状态栏等背景颜色的修改一般是在themes.xml文件中修改,android一个activity各个部件参考:
colorPrimary,colorPrimaryDark等的意义
添加链接描述

但是问题在于:只在这里修改背景颜色的话,可能会出现背景色和字体颜色重合导致看不清字,所以最好是背景色和字体色一起改,参考:
导航栏设置颜色字体

二、标题栏

(1)android提供的标题栏

android 提供的原装标题栏(ActionBar)可以通过以下步骤打开,并添加返回按钮

1、在themes.xml文件中有.NoActionBar, 将它删掉,状态栏就会出现了

2.修改标题

AndroidManifest.xml 文件的 < activity>中 增加 android:lable="标题文字"

  1. 在onCreate()函数中添加下面的代码,用于识别标题栏并添加返回按钮
cpp 复制代码
 //标题栏
        ActionBar actionBar = getSupportActionBar();
        if(actionBar!=null){
            Toast.makeText(this,"not null!1",Toast.LENGTH_SHORT).show();
            // actionBar.hide();   //隐藏标题栏
            actionBar.setHomeButtonEnabled(true);
            actionBar.setDisplayHomeAsUpEnabled(true);  //添加返回的图标
        }
  1. 添加返回响应函数
cpp 复制代码
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()){
            case android.R.id.home :
                Intent intent = new Intent(NewsActivity.this,MainActivity.class);
                startActivity(intent);
                finish();
                break;

            default:
                break;
        }

        return super.onOptionsItemSelected(item);

    }

(2)自定义标题栏

android提供的ActionBar文字偏左,想要居中,于是自定义一个标题栏。参考:
自定义标题栏

三、activity之间的跳转

1. 通过Intent实现跳转,可加参数

cpp 复制代码
 Intent intent=new Intent(MainActivity.this,VerifyWatermark.class);
     //   String timename=timeStamp+".jpg";
    //    intent.putExtra("filename",fileName);
    //    intent.putExtra("Timename",timename);
        startActivity(intent);
        finish();

2. finish()

使用fininsh(),当activity跳转,当前activity就会结束。
finish的使用

四、drawable与图片尺寸

安卓手机型号繁多,为了适配多种机型,同一个图片需要不同的尺寸,于是在drawable中定义不同尺寸的文件夹,存放对应的图片,系统就会自动寻找适合的尺寸。

参考:
创建不同尺寸文件夹

五、启动图标和app名

1. 设置的位置

android:icon 和android:label分别设置图标和名字

2. 图标

图标同样需要不同的尺寸和形状以满足需要,android studio提供一个 image asset图标生成器帮助制作图标,制作好的图标自动存放到maimap路径下。

参考:
图标生成器的使用
制作自定义图标

相关推荐
Mortal_hhh20 分钟前
VScode的C/C++点击转到定义,不是跳转定义而是跳转声明怎么办?(内附详细做法)
ide·vscode·stm32·编辑器
无极程序员44 分钟前
PHP常量
android·ide·android studio
萌面小侠Plus2 小时前
Android笔记(三十三):封装设备性能级别判断工具——低端机还是高端机
android·性能优化·kotlin·工具类·低端机
慢慢成长的码农2 小时前
Android Profiler 内存分析
android
大风起兮云飞扬丶2 小时前
Android——多线程、线程通信、handler机制
android
L72562 小时前
Android的Handler
android
清风徐来辽2 小时前
Android HandlerThread 基础
android
HerayChen3 小时前
HbuildderX运行到手机或模拟器的Android App基座识别不到设备 mac
android·macos·智能手机
顾北川_野3 小时前
Android 手机设备的OEM-unlock解锁 和 adb push文件
android·java
hairenjing11233 小时前
在 Android 手机上从SD 卡恢复数据的 6 个有效应用程序
android·人工智能·windows·macos·智能手机