移动互联网开发技术教学网站项目研究第四篇

2021@SDUSC

音乐播放器项目总结

在这里插入图片描述
音乐播放器项目一共三个界面,包括主页面、音乐列表、音乐播放界面。主页面有一个图像按钮,可以跳转到音乐列表。音乐列表界面会显示安装设备本地音乐列表,包括音乐的名称、歌手、格式等信息,它们是按照地址取出的。点击音乐的条目会跳转到音乐播放界面,音乐播放界面(如上图)会显示音乐名称、歌手、总时长和播放进度,拖拉进度条会改变音乐播放进度。一个控制音乐播放、暂停按钮,右上角可以返回音乐列表界面。
缺点:功能设计较为简单,应用逻辑设计不太完善。音乐播放界面可以添加切换上一首或者下一首歌曲按钮,这样不需要频繁返回到音乐列表界面。便捷操作向右滑动直接返回到主界面或者上一首播放的音乐界面,常规认为会返回到音乐列表,不需要点击右上角的按钮。点击返回音乐列表按钮后,当前播放音乐会暂停,也不符合用户需求。一般是用户可以在查看音乐列表的同时,可以播放当前音乐,而不是退出音乐播放界面,音乐播放服务资源就释放。而且程序只能播放本地音乐。总而言之,应用设计总体不太符合用户需求。

校园地图项目

项目结构


activity_description.xml:是标志性建筑介绍界面
在这里插入图片描述
activity_mian.xml:显示地图、学校标志性建筑名称和当前位置界面
在这里插入图片描述
mipmap:该文件夹中放置界面中的各种图片资源。例如backward_arrowsmall中存放的是返回按钮图片。

Android页面布局

TextView
        android:id="@+id/place_name"
        android:layout_width="wrap_content"
        android:layout_height="45dp"
        android:layout_marginStart="50dp"
        android:layout_marginLeft="50dp"
        android:layout_marginTop="90dp"
        android:text="图书馆"
        android:textColor="@color/blue"
        android:textSize="36sp"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

id:为TextView设置一个组件id,根据id,前端代码中通过findViewById()的方法获取到该对象,然后进行相关属性的设置。这其中有两种声明方式,一是id="@+id/place_name"@+id就是在R.java文件里新增一个id名称,如果之前已经存在相同的id名称,那么会覆盖之前的名称。还有一种是用@id,而@id则是直接引用R.java文件的存在的id资源,如果不存在,会编译报错。
layout_width:组件的宽度。layout_height:组件的高度。
text:设置显示的文本内容,如果字符串较长的话,可以写到string.xml文件中,然后通过@String/xxx取得对应的字符串内容。
textColor:设置字体颜色,同上,通过"@color/blue" colors.xml资源来引用。

在这里插入图片描述
textSize:字体大小,sp为单位。
layout_constraintTop_toTopOf:组件顶部对齐被声明组件的顶部。 ConstraintLayout是一个Support库,它支持向前兼容,是对RelativeLayout的升级,效率更高且更实用。该代码使用是对组件的约束,和"parent"左右对齐,layout_marginTop="90dp"
距离parent的top为90dp。如果设置了某个方向的margin值,那么只有设置相对应方向的约束条件,这个方向的margin值才生效。比如设置了android:layout_marginStart="50dp",那么当且仅当设置了start的约束条件app:layout_constraintStart_toStartOf或者app:layout_constraintStart_toEndOf这个margin值才生效。
layout_constraintHorizontal_bias:基准线约束,必须在同时设置了startend两个方向的约束才起作用,取值范围是0-1,默认值是0.5。layout_constraintVertical_bias是针对topbottom
gravity:设置控件中内容的对齐方向。

<ImageButton
        android:id="@+id/btn_place_return"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_marginStart="13dp"
        android:layout_marginLeft="13dp"
        android:layout_marginTop="10dp"
        android:background="#00FFFFFF"
        android:onClick="back_onclick"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:srcCompat="@mipmap/backward_arrowsmall" />

background:设置组件的背景颜色,可以直接设置为颜色值,也可以是图片。
onClick="back_onclick":在布局文件需要为按钮绑定一个点击方法。

//绑定返回按钮的点击事件
    public void back_onclick(View v){
        Intent mIntent2 = new Intent();
        mIntent2.setClass(DescriptionActivity.this, MainActivity.class);
        startActivity(mIntent2);
    }

srcCompat:是集成 vector drawables 。矢量可绘制对象可用XML中定义的单个矢量图形替换多个png。
src:设置一个可绘制对象作为此ImageView的内容,它将显示图片的原始大小,不可以自动缩放。

百度地图 API Key

基于位置的服务简称LBS,主要的工作原理是利用无线电通讯网络或 GPS 等定位方式来确定出移动设备所在的位置。
需要使用者自行下载BaiduLBS_AndroidSDK_Lib.aar文件,拷贝到MyMap - app - libs 目录下,然后打开Gradle Scriptus - build.gradle进行文件配置。配置完成后,需要Build重新将项目编译。

<com.baidu.mapapi.map.MapView
        android:id="@+id/themapView"
        android:layout_width="0dp"`在这里插入代码片`
        android:layout_height="0dp"
        android:clickable="true"
        android:focusable="true"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="1.0"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="1.0">

添加百度地图容器,设置id为themapView,按照默认的设置占满屏幕。clickable设置是否可点击。focusable设置是否可取得焦点。

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <!-- 这个权限用于进行网络定位 -->
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <!-- 这个权限用于访问GPS定位 -->

上附代码为获取定位权限声明配置。

<service
            android:name="com.baidu.location.f"
            android:enabled="true"
            android:process=":remote" />

上附代码为在在Application标签中声明定位的service组件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值