【Android基础】利用布局来拼图

这次我们来讲一个拼图的例子,主要讲解下相对布局。

使用布局将下面的碎片排列成一张完整的图片:

完成效果图:

布局文件代码如下:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="cn.yzx.layout.MainActivity" >

    <ImageView
        android:id="@+id/center"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:src="@drawable/center" />

    <ImageView
        android:id="@+id/buttom"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/center"
        android:layout_centerHorizontal="true"
        android:src="@drawable/buttom" />

    <ImageView
        android:id="@+id/top"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@id/center"
        android:layout_centerHorizontal="true"
        android:src="@drawable/top" />

    <ImageView
        android:id="@+id/left"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toLeftOf="@id/center"
        android:layout_centerVertical="true"
        android:src="@drawable/left" />

    <ImageView
        android:id="@+id/right"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@id/center"
        android:layout_centerVertical="true"
        android:src="@drawable/right" />

    <ImageView
        android:id="@+id/lefttop"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@id/left"
        android:layout_alignLeft="@id/left"
        android:layout_alignRight="@id/left"
        android:src="@drawable/lefttop" />

    <ImageView
        android:id="@+id/righttop"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@id/right"
        android:layout_alignLeft="@id/right"
        android:layout_alignRight="@id/right"
        android:src="@drawable/righttop" />

    <ImageView
        android:id="@+id/leftbutton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/left"
        android:layout_alignLeft="@id/left"
        android:layout_alignRight="@id/left"
        android:src="@drawable/leftbutton" />

    <ImageView
        android:id="@+id/rightbutton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/right"
        android:layout_alignLeft="@id/right"
        android:layout_alignRight="@id/right"
        android:src="@drawable/rightbutton" />

</RelativeLayout>

不知道是图片裁剪的不平整还是我布局不好,最后显示的结果长短不一,希望各位给我指出来错误。

时间: 2024-10-12 12:54:40

【Android基础】利用布局来拼图的相关文章

Android基础之布局ConstraintLayout

Google I/O 2016 上发布了 ConstraintLayout,据说很强大,那就一探究竟吧! gradle配置 compile 'com.android.support.constraint:constraint-layout:1.0.0-beta2' 1 1 阅读前提:熟悉四大基础布局 一.位置控制 8个边界控制属性 注:最左边表示可移动的最左边,左边表示View的左边边界 app:layout_constraintLeft_toLeftOf app:layout_constrai

Android基础——常用布局管理layout

相对布局: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.a

Android 面试题总结之Android 基础(六)

Android 面试题总结之Android 基础(六) 在上一章节Android 面试题总结之Android 基础ListView(五) 主要是ListView的优化,原理以及一些基本问题. 在阅读过程中有任何问题,请及时联系.如需转载请注明 fuchenxuan de Blog 本章系<Android 之美 从0到1 – 高手之路>Android基础将会总结了Android 布局常见面试问题.其实对于基础方面Android 开发来说,经常面试无非就是UI,网络,数据库,这三大方面,本章节总结

【Android】利用表格布局,Android中xml文件与java的交互制作登录界面

登录界面是图形编程.网页编程的一个经典而又基础的程序. 在安卓中,如图所示一个基本登录界面: 点击取消按钮就关闭这个程序,点击登录按钮则显示用户输入的用户名与密码. 一.基本布局 这个程序利用到安卓中的表格布局. 先打开res/values/strings.xml中定义几个字符串.之所以不直接把字符串直接写在activity_main.xml的组件中,是因为免得Eclipse出现警告.这个文件的代码如下: <?xml version="1.0" encoding="ut

Android基础01 快速入门 &amp; 布局

Android基础01 快速入门 & 布局 01.01  手机制式 第一代模拟制式手机(1G):1G就是大哥大,手机类似于简单的无线电双工电台,通话是锁定在一定频率,所以使用可调频电台就可以窃听通话.   第二代GSM.CDMA等数字手机(2G):手机使用PHS,GSM或者CDMA这些十分成熟的标准,具有稳定的通话质量和合适的待机时间,支持彩信业务的GPRS和上网业务的WAP服务,以及各式各样的Java程序等. 第三代移动通信技术(3G):3G,是英文3rd Generation的缩写,指第三代

android基础之LinearLayout布局

LinearLayout布局: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="matc

Android基础入门教程——2.2.1 LinearLayout(线性布局)

Android基础入门教程--2.2.1 LinearLayout(线性布局) 标签(空格分隔): Android基础入门教程 本节引言: 本节开始讲Android中的布局,Android中有六大布局,分别是: LinearLayout(线性布局),RelativeLayout(相对布局),TableLayout(表格布局) FrameLayout(帧布局),AbsoluteLayout(绝对布局),GridLayout(网格布局) 而今天我们要讲解的就是第一个布局,LinearLayout(线

Android基础入门教程——2.2.2 RelativeLayout(相对布局)

Android基础入门教程--2.2.2 RelativeLayout(相对布局) 标签(空格分隔): Android基础入门教程 本节引言: 在上一节中我们对LinearLayout进行了详细的解析,LinearLayout也是我们 用的比较多的一个布局,我们更多的时候更钟情于他的weight(权重)属性,等比例划分,对屏幕适配还是 帮助蛮大的;但是使用LinearLayout的时候也有一个问题,就是当界面比较复杂的时候,需要嵌套多层的 LinearLayout,这样就会降低UI Render

Android基础入门教程——2.2.3 TableLayout(表格布局)

Android基础入门教程--2.2.3 TableLayout(表格布局) 标签(空格分隔): Android基础入门教程 本节引言: 前面我们已经学习了平时实际开发中用得较多的线性布局(LinearLayout)与相对布局(RelativeLayout), 其实学完这两个基本就够用了,笔者在实际开发中用得比较多的也是这两个,当然作为一个好学的程序猿, 都是喜欢刨根问题的,所以虽说用得不多,但是还是有必要学习一下基本的用法的,说不定哪一天能用得上呢! 你说是吧,学多点东西没什么的,又不吃亏!好