zoukankan      html  css  js  c++  java
  • launcher(1)

    luancher:程序的启动器,简单的说就是应用程序的入口菜单。

    在最后将得到这样一个效果:


    要构建一个最简单的launcher,需要有两个主步骤:
    1,得到所有应用的图片和标题
    2,将这些图片和标题显示在屏幕中
    3,实现触摸和按键效果

    上面两个步骤看上去很简单,但是在我做这个项目的时候大概至少写了30多个Java文件。

    I .先从第二步骤开始,首先应用肯定不能在一个页面中排列完,所以需要有多个页面,其次每个页面中需要对该页面的所有应用进行
    矩阵排列。

    实现这个步骤至少有几个公共的类必须完成:
    ViewGroup ,一个线性列表,存放页和当个应用元素
    GridView, 对列表中的应用元素进行矩阵式排列
    ViewPage, 管理不同的页
    ActorView,当个应用的描述

    由于该luancher是在gdx架构起来的,所有不能使用系统自带的View类,所以上面几个类都要自己实现。这些类的原型在系统文件中都能找到,
    所以--------我们可以抄!!!!!

    II. 实现第一步骤,要获取应用的名字图片还是很简单的,SDK中提供了接口。但是我们要将图片的名字和图片组合成一张图片,最后显示在
    surface中,而且这些图片是显示在GPU中,所以需要将组合后的bmp图片最终转换成texure图片。这个过程中是整个luancher最复杂的部分。

    III.触摸和按键效果可以继承相应的接口,实现View的坐标变换就可,看上去简单。

    由于luancher在非主线程中起跑,而应用资源又必须在主线程中获取所以在开发过程中需要不断的在主线程和GL线程中切换,繁琐!

    I am not doing shit today !
  • 相关阅读:
    004: 基本数据类型-List
    003: 基本类型-字符串类型
    002: 基本类型-数值型(int, float)
    001: Hello World
    Python中的单例模式的几种实现方式的及优化
    django之admin组件
    权限管理---设计分析以及具体细节
    基于Form组件实现的增删改和基于ModelForm实现的增删改
    Python常见问题系列
    django的render的说明
  • 原文地址:https://www.cnblogs.com/mogul/p/3016652.html
Copyright © 2011-2022 走看看