我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Android studio界面ui优化

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Android studio界面ui优化

记录一下对毕设界面的优化

目录

1、美化TableRow,实现下边框

效果图:
在这里插入图片描述
方法:创建xml文件,然后引用该xml文件:

                                          //有四个方向可以选择,这里选择底部                                

有时候下边框可以直接用view实现,我是因为不想把tablelayout改成linearlayout所以没用这个方法
view方法:

  

2、美化按钮

  • 背景透明并取消阴影
    效果图:
    在这里插入图片描述

             android:backgroundTint="#0000"         android:stateListAnimator="@null"
  • 点击按钮变色
    效果图
    在这里插入图片描述
    同样创建xml文件

                            

然后在代码块中设置点击时显示该格式,未点击时格式为空

                activity.setBackground(null);                goods.setBackground(null);                feedback.setBackground(getResources().getDrawable(R.drawable.button_shape));
  • 虚线框
    效果图:
    在这里插入图片描述
            
  • 预留位置

3、更改icon颜色

效果图:
更改前:在这里插入图片描述
更改后:在这里插入图片描述
方法:在xml文件里使用app:tint="@color/alarmColor"即可

4、实现头像位于卡片中间

效果图:
在这里插入图片描述
思路:使用relativeLayout布局,使头像位于卡片的下方,然后通过 android:layout_marginTop="-50dp"调整位置

问题:会发现Imagview会被卡片挡住,而不能显示在卡片的上面

解决办法:cardview引用 android:elevation="10dp",头像设为 android:elevation="20dp",即头像的值比cardview大就行

ps:要把不必要的嵌套布局都删掉,同时卡片的值最好不要设为0,我设成0的时候即使头像的值比0大也不起作用

5、弹窗的美化

效果图:
在这里插入图片描述
ps:先创建一个xml文件

                                                                                                                                                        

然后在代码块处实现点击图标出现弹窗:

 menu.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View view) {                //创建弹窗                builder = new AlertDialog.Builder(ActivityDetailActivity.this);                inflater = getLayoutInflater();                layout = inflater.inflate(R.layout.dialog_menu, null);//获取自定义布局                builder.setView(layout);//设置对话框的布局                dialog = builder.create();//生成最终的对话框                dialog.show();//显示对话框                //弹窗背景透明                dialog.setCanceledOnTouchOutside(true);                Window window = dialog.getWindow();                window.setContentView(R.layout.dialog_menu);                ((Window) window).setBackgroundDrawable(new ColorDrawable(0x00000000));                WindowManager windowManager = ActivityDetailActivity.this.getWindowManager();                Display display = windowManager.getDefaultDisplay();                WindowManager.LayoutParams lp = dialog.getWindow().getAttributes();                lp.height = WindowManager.LayoutParams.MATCH_PARENT; //设置宽度                lp.width = WindowManager.LayoutParams.MATCH_PARENT; //设置宽度//                lp.gravity = Gravity.BOTTOM;                window.setGravity(Gravity.CENTER);                dialog.getWindow().setAttributes(lp);                }                }

ps:但其实这一块的代码我是想实现弹窗位于最低端来着,但是不知道为什么Gravity.Bottom不起作用,后来是在xml的文件里更改弹窗的位置才实现位置的变化,不过误打误撞实现了背景透明

pps:如果弹窗位置始终不变化,试着查看xml的宽和高是不是match_parent,不是的话可能会导致弹窗的位置不改变。

pps:如果 dialog.setCanceledOnTouchOutside(true)不起作用,可以试着修改宽和高,(我发现直接不设置宽和高倒也行)参考文章:安卓Dialog setCanceledOnTouchOutside(ture) 无效问题

ppps:我发现有的时候这样设置之后弹窗点击失效,这时候只用把 window.setContentView(R.layout.dialog_menu);注释掉就好

6、editText美化

去除editText的下划线:
两种方法,一种是令background为@null,第二种方法:令background为00FFFFFF。

7、卡片的使用

  • 添加阴影: app:cardElevation="@dimen/fab_margin"
  • 如果涉及到很多控件的大小、颜色,尽量采用引用的方式,即用@color/viewColor的方式,而不是直接#FFFFFF,因为这样后期修改比较方便,不用一个一个地修改
  • 布局最好用relativelayout(个人觉得最方便)

来源地址:https://blog.csdn.net/zzzzzwbetter/article/details/129954783

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Android studio界面ui优化

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

解析Android开发优化之:对界面UI的优化详解(一)

通常,在这个页面中会用到很多控件,控件会用到很多的资源。Android系统本身有很多的资源,包括各种各样的字符串、图片、动画、样式和布局等等,这些都可以在应用程序中直接使用。这样做的好处很多,既可以减少内存的使用,又可以减少部分工作量,也可
2022-06-06

解析Android开发优化之:对界面UI的优化详解(二)

如果我们在每个xml文件中都把相同的布局都重写一遍,一个是代码冗余,可读性很差;另一个是修改起来比较麻烦,对后期的修改和维护非常不利。所以,一般情况下,我们需要把相同布局的代码单独写成一个模块,然后在用到的时候,可以通过
2022-06-06

解析Android开发优化之:对界面UI的优化详解(三)

有时候,我们的页面中可能会包含一些布局,这些布局默认是隐藏的,当用户触发了一定的操作之后,隐藏的布局才会显示出来。比如,我们有一个Activity用来显示好友的列表,当用户点击Menu中的“导入”以后,在当前的Activity中才会显示出一
2022-06-06

Android仿Win8的metro的UI界面(上)

手机下载了一些APP,发现现在仿win8的主界面越来越多,在大家见惯了类GridView或者类Tab后,给人一种耳目一新的感觉。今天在eoe上偶然发现已经有人实现了这个功能的源码(地址:http://www.eoeandroid.com/f
2022-06-06

Android性能优化系列篇UI优化

这篇文章主要为大家介绍了Android性能优化系列篇UI优化示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
2022-11-13

Android开发 -- UI界面之threme和style

Android系统的themes.xml和style.xml(位于\base\core\res\res\values\)包含了很多系统定义好的style,建议在里面挑个合适的,然后再继承修改。 一、threme android中的主题一般用
2022-06-06

Android Studio微信界面基础开发

Android Studio微信界面基础开发 基础页面开发 新建页面并编写#第一个框架处理,分为top,content,bottom事件处理函数MainActivity.java package com.example.wexin; imp
2022-06-06

Android studio怎么实现app登录界面

这篇文章主要介绍了Android studio怎么实现app登录界面的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Android studio怎么实现app登录界面文章都会有所收获,下面我们一起来看看吧。And
2023-06-30

Android studio APP开发 控制UI布局的方式,用代码书写UI界面,代码和XML混合控制UI布局

控制UI布局的方式 UI界面就是APP的界面,Android提供4种方法控制UI界面,这里主要讲两种。 代码控制UI界面 直接在Activity中用代码设置UI界面的组件以及组件的点击事件。 步骤一: 首先注意,如果要完全用代码手写一个UI
2022-06-06

Android Studio如何实现简易登录界面

这篇文章主要介绍“Android Studio如何实现简易登录界面”,在日常操作中,相信很多人在Android Studio如何实现简易登录界面问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Android S
2023-06-30

Android Studio怎么实现登录界面功能

本文小编为大家详细介绍“Android Studio怎么实现登录界面功能”,内容详细,步骤清晰,细节处理妥当,希望这篇“Android Studio怎么实现登录界面功能”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧
2023-06-30

Android Studio如何去除界面默认标题栏

(1)点击左侧app目录下的manifests,打开AndroidManifest.xml文件,如图:(2)找到其中为 android:theme="@style/AppTheme" 的语句,如图:(3)将其修改为 android:them
2022-06-06

蓝牙聊天App设计1:Android Studio制作蓝牙聊天通讯软件(UI界面设计)

前言:蓝牙聊天App设计全部有三篇文章(一、UI界面设计,二、蓝牙搜索配对连接实现,三、蓝牙连接聊天),这篇文章是一、UI界面设计 课程1:Android Studio小白安装教程,以及第一个Android项目案例“Hello World”
2023-08-16

编程热搜

  • Android:VolumeShaper
    VolumeShaper(支持版本改一下,minsdkversion:26,android8.0(api26)进一步学习对声音的编辑,可以让音频的声音有变化的播放 VolumeShaper.Configuration的三个参数 durati
    Android:VolumeShaper
  • Android崩溃异常捕获方法
    开发中最让人头疼的是应用突然爆炸,然后跳回到桌面。而且我们常常不知道这种状况会何时出现,在应用调试阶段还好,还可以通过调试工具的日志查看错误出现在哪里。但平时使用的时候给你闹崩溃,那你就欲哭无泪了。 那么今天主要讲一下如何去捕捉系统出现的U
    Android崩溃异常捕获方法
  • android开发教程之获取power_profile.xml文件的方法(android运行时能耗值)
    系统的设置–>电池–>使用情况中,统计的能耗的使用情况也是以power_profile.xml的value作为基础参数的1、我的手机中power_profile.xml的内容: HTC t328w代码如下:
    android开发教程之获取power_profile.xml文件的方法(android运行时能耗值)
  • Android SQLite数据库基本操作方法
    程序的最主要的功能在于对数据进行操作,通过对数据进行操作来实现某个功能。而数据库就是很重要的一个方面的,Android中内置了小巧轻便,功能却很强的一个数据库–SQLite数据库。那么就来看一下在Android程序中怎么去操作SQLite数
    Android SQLite数据库基本操作方法
  • ubuntu21.04怎么创建桌面快捷图标?ubuntu软件放到桌面的技巧
    工作的时候为了方便直接打开编辑文件,一些常用的软件或者文件我们会放在桌面,但是在ubuntu20.04下直接直接拖拽文件到桌面根本没有效果,在进入桌面后发现软件列表中的软件只能收藏到面板,无法复制到桌面使用,不知道为什么会这样,似乎并不是很
    ubuntu21.04怎么创建桌面快捷图标?ubuntu软件放到桌面的技巧
  • android获取当前手机号示例程序
    代码如下: public String getLocalNumber() { TelephonyManager tManager =
    android获取当前手机号示例程序
  • Android音视频开发(三)TextureView
    简介 TextureView与SurfaceView类似,可用于显示视频或OpenGL场景。 与SurfaceView的区别 SurfaceView不能使用变换和缩放等操作,不能叠加(Overlay)两个SurfaceView。 Textu
    Android音视频开发(三)TextureView
  • android获取屏幕高度和宽度的实现方法
    本文实例讲述了android获取屏幕高度和宽度的实现方法。分享给大家供大家参考。具体分析如下: 我们需要获取Android手机或Pad的屏幕的物理尺寸,以便于界面的设计或是其他功能的实现。下面就介绍讲一讲如何获取屏幕的物理尺寸 下面的代码即
    android获取屏幕高度和宽度的实现方法
  • Android自定义popupwindow实例代码
    先来看看效果图:一、布局
  • Android第一次实验
    一、实验原理 1.1实验目标 编程实现用户名与密码的存储与调用。 1.2实验要求 设计用户登录界面、登录成功界面、用户注册界面,用户注册时,将其用户名、密码保存到SharedPreference中,登录时输入用户名、密码,读取SharedP
    Android第一次实验

目录