android:anroidUI编程4(中文)
需积分: 0 161 浏览量
更新于2010-04-02
收藏 14.62MB PDF 举报
### Android UI 编程知识点详解
#### 一、Android UI编程概述
在Android开发中,UI(用户界面)设计是至关重要的一个环节。良好的UI设计不仅能够提升用户体验,还能够帮助开发者更好地展示应用的功能和特性。本文将详细介绍如何在Android应用中实现专业相框设计,特别是如何使用`ImageView`来实现图像的堆叠效果。
#### 二、准备工作
1. **新建工程:** 在Android Studio中创建一个新的Android项目。选择合适的SDK版本,并设置项目的名称和包名。
2. **准备图片资源:** 为了实现专业相框的效果,需要准备三张PNG格式的图片,分别为`left.png`、`right.png`和`photo.png`。这些图片将用于构建相框的不同部分。
#### 三、修改布局文件
接下来,需要修改项目的主布局文件`main.xml`。在这个例子中,使用了`AbsoluteLayout`作为容器,它允许我们精确地控制子视图的位置。
```xml
<AbsoluteLayout
android:id="@+id/widget34"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<!-- 第一层图片 -->
<ImageView
android:id="@+id/myImageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="0px"
android:layout_y="36px"
android:src="@drawable/left" />
<!-- 第二层图片 -->
<ImageView
android:id="@+id/myImageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="0px"
android:layout_y="36px"
android:src="@drawable/right" />
<!-- 按钮1 -->
<Button
android:id="@+id/myButton1"
android:layout_width="105px"
android:layout_height="66px"
android:text="pic1"
android:layout_x="9px"
android:layout_y="356px" />
<!-- 按钮2 -->
<Button
android:id="@+id/myButton2"
android:layout_width="105px"
android:layout_height="66px"
android:text="pic2"
android:layout_x="179px"
android:layout_y="356px" />
</AbsoluteLayout>
```
这里,`ImageView`被用来显示`left.png`和`right.png`两张图片,而`photo.png`并没有直接出现在XML中,而是通过代码动态加载。两个`Button`控件分别用于切换不同的图片。
#### 四、编写Java代码
打开`mainActivity.java`文件,并添加以下代码:
```java
package zyf.Ex_Ctrl_7;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
public class Ex_Ctrl_7 extends Activity {
/** Called when the activity is first created. */
/* 声明Button、ImageView对象 */
private ImageView mImageView01, mImageView02;
private Button mButton01, mButton02;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 初始化视图组件
mImageView01 = (ImageView) findViewById(R.id.myImageView1);
mImageView02 = (ImageView) findViewById(R.id.myImageView2);
mButton01 = (Button) findViewById(R.id.myButton1);
mButton02 = (Button) findViewById(R.id.myButton2);
// 设置按钮点击事件
mButton01.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 更改图片
mImageView02.setImageResource(R.drawable.photo);
}
});
mButton02.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 更改图片
mImageView02.setImageResource(R.drawable.left);
}
});
}
}
```
在上面的代码中,首先初始化了所有的视图组件,并设置了两个按钮的点击监听器。当点击按钮时,`ImageView`中的图片会根据不同的按钮被替换为`photo.png`或`left.png`。
#### 五、运行应用
完成以上步骤后,可以在模拟器或真实设备上运行该应用。当应用启动时,可以看到一个具有两个按钮和两个图片的界面。点击按钮可以切换图片,从而实现相框设计的效果。
#### 六、总结
通过本文的学习,您已经掌握了如何使用Android中的`ImageView`来实现图像堆叠,并且了解了如何通过按钮控制图片的显示与切换。这对于开发具有丰富视觉效果的应用来说是非常有用的技能。希望这些内容能对您的Android开发之旅有所帮助。
梦_枫
- 粉丝: 360
- 资源: 19
最新资源
- 锅炉控制体系:西门子PLC与昆仑触摸屏的集成管理与CAD电气图纸指导下的精准调控,锅炉控制系统,西门子200smartPLC程序,昆仑触摸屏程序,带CAD电气图纸 ,核心关键词:锅炉控制系统; 西门子
- Maxwell电机模型:完整设计可运行,峰值功率达120kw,损耗计算与温度场分析功能强大,Maxwell电机模型,电机设计,电机设计,模型完整可以运行,峰值功率120kw,额定功率80kw,可以计算
- FLUENT模拟仿真分析树形流道设计在质子交换膜燃料电池中的应用探究,FLUENT模拟仿真树形流道质子交膜燃料电池 ,核心关键词:FLUENT模拟; 树形流道; 质子交换膜; 燃料电池; 仿真 ,"F
- FPGA系统下的JPEG-LS图像压缩方案:可配置无损与有损压缩,含工程源码及仿真测试报告,FPGA实现JPEG-LS图像压缩 FPGA实现JPEG-LS图像压缩,有损无损可配置,提供工程源码和 本设
- 三相不平衡潮流计算Matlab程序:采用前推回代法模拟三相不平衡模型及互阻抗分析,三相不平衡潮流计算matlab 本程序采用前推回代法,考虑三相不平衡和互阻抗,可通过改变三相负荷和线路参数构建三相不平
- Matlab鲸鱼优化算法:含23目标函数模板,自定义数据灵活调整与应用,Matlab程序,鲸鱼优化算法(WOA),有23个目标函数,根据自己需求修改,修改自己数据即可使用 ,Matlab程序; 鲸
- 关于光伏并网中单相与三相逆变及lcl仿真对配电网继电保护影响的研究,光伏并网 单相 三相 逆变 lcl 仿真 光伏对配电网继电保护影响 ,核心关键词:光伏并网; 单相与三相; 逆变技术; LCL滤波
- 三菱PLC与组态王联合打造图书馆智能借还书控制系统,基于三菱PLC和组态王组态图书馆借还书的智能控制系统 ,基于三菱PLC;组态王组态;借还书;智能控制系统,基于三菱PLC与组态王智能控制的图书馆借还
- 光伏储能与三相并离网逆变切换运行模型:Boost、Buck-boost双向DCDC控制、PQ与VF控制策略及孤岛检测自动切换技术笔记,光伏储能+三相并离网逆变切运行模型含笔记 包含Boost、Bu
- 储能变流器:高效功率双向流动,含DCDC和DCAC两大功能模块,并网与离网皆可,灵活模型轻松拓展使用,储能变流器(双向) 包含dcdc?dcac两部分 功率双向流动 可并网,也可改为离网状态下带三相负
- 内置式MTPA控制模型:速度环输出转矩,两种求解dq给定电流方法(工程近似与求解MTPA方程),与id=0控制比较分析,该模型是内置式的MTPA控制,速度环的输出为给定转矩,然后方式1通过求解MTPA
- STM32F系列兼容西门子S7 200 PLC源码开发详解:基于STM32F103RCT6芯片与Keil MDK5开发环境,STM32F系列兼容西门子S7 200PLC源码 CPU:STM32F
- 模拟IC设计入门:SMIC 0.18um锁相环电路仿真及400MHz锁定频率VCO实践,模拟ic设计,smic0.18um的锁相环电路,较简单的结构,适合入门学习,可以直接仿真,输出结果较为理想,锁定
- IEEE69节点配电网Simulink模型:新能源设备与无功补偿设备集成应用探索,IEEE69节点配电网simulink模型,可以加入风机光伏等新能源设备,SVC等无功补偿设备 ,核心关键词:IEEE
- 拓展卡尔曼滤波算法的应用原理与优化实践-高精度数据处理的关键技术,扩展卡尔曼滤波算法 ,核心关键词:扩展卡尔曼滤波算法; 滤波; 估计; 状态; 算法优化; 动态系统; 噪声处理; 参数估计; 预测
- 同相载波层叠三电平逆变器窄脉冲剔除仿真研究:电路参数与波形图分析,同相载波层叠的三电平逆变器窄脉冲直接剔除仿真 已知电路参数,下图为仿真模型和窄脉冲剔除前后的输出波形图 ,同相载波层叠;三电平逆变器