android java写ui_纯 Java 代码实现 Android UI

本文是一篇关于为何及如何使用纯Java代码创建Android UI界面的教程,特别适合SDK开发等特殊场合。通过实例展示了如何创建一个包含黑色半透明背景、居中带圆角边框的ImageView以及右上角的圆形关闭按钮的界面,全程不依赖XML或额外图片素材。
摘要由CSDN通过智能技术生成

这是一篇很初级也很简单的教程。

为什么要用纯 Java 代码来实现 Android UI 界面

众所周知在 Android 开发时应用的 UI 界面一般是通过 XML 文件构建的。目前主流的 Android Studio 和

Eclipse

都可以通过鼠标拖拽控件的方式很高效的来搭建 UI 界面。那么为什么还要使用纯 Java 代码的方式来实现 UI 界面呢?

其实还是有一些特殊的场合需要使用这种纯 Java 代码的方式来实现 UI 界面的。例如 SDK 的开发。SDK 一般都是交付给第三方来使用的,要求接入流程尽可能简单,工作量尽可能少,最好直接一个 jar 包丢给对方,像这种情况纯 Java 代码来实现 UI 界面的方式就显得尤为重要了。

废话就到这,下面通过我工作中遇到的一个例子来展示一下如何用纯 Java 代码来实现 Android 的 UI 界面。

Android UI 界面需求

6542c1eb1ac93249723fd21868d4752c.png

如上图所示,我们需要使用纯 Java 代码来实现这样一个 UI 界面,它的要求是:

背景黑色半透明

居中一个占整个屏幕 76% 的 ImageView 用于显示图片

居中的 ImageView 要有一个白色的带圆角的边框

居中的 ImageView 右上角还要有一个圆形的关闭按钮

整个界面要求只能使用纯 Java 代码实现

除了 ImageView 中显示的图片以外,不能使用其他图片素材

我们一步一步按照要求用纯 Java 代码来实现这个 UI 界面。

dp 与 px 的转换

至于 dip 、 dp 、 px 、 sp 这些概念就不在这里介绍了,大家自行搜索。这里要注意的是,在使用 XML 做 UI 界面布局时一般会使用 dp 做单位,但是在纯 Java 实现中方法参数都使用 px 做单位,所以这里就牵扯到 dp 和 px 之间的转换。直接放出代码:

private int dp2px(float dp) {final float scale = getResources().getDisplayMetrics().density;return (int) (dp * scale + 0.5f);}

整体布局

这里就不具体介绍 Android 布局的相关知识了,直接说怎么做。这里用了线性布局 LinearLayout ,具体布局方式是

先部署一个根布局 LinearLayout

在根布局中从上到下嵌套三个 横向 LinearLayout ,其中头部和底部的 layout_weight=12 中间的 layout_weight=76

在上一步嵌套的中间的 layout_weight=76 的布局中从左到右再嵌套三个 纵向 LinearLayout ,其中最左

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值