当前位置: 首页 > news >正文

建设法规网站/淘宝店铺推广方法

建设法规网站,淘宝店铺推广方法,网站内链如何布局,网站应用市场设计3应用程序窗口设置 对于本应用程序,需要不显示窗口标题,并且把窗口设置成最大化。 1 requestWindowFeature(Window.FEATURE_NO_TITLE); 2 getWindow().setFlags( 3 WindowManager.LayoutParams.FLAG_FULLSCREEN 4 , WindowManage…

3应用程序窗口设置

对于本应用程序,需要不显示窗口标题,并且把窗口设置成最大化。

    1   requestWindowFeature(Window.FEATURE_NO_TITLE);

    2   getWindow().setFlags(

    3          WindowManager.LayoutParams.FLAG_FULLSCREEN

    4          , WindowManager.LayoutParams.FLAG_FULLSCREEN);

其中,第1行代码的作用是不显示窗口标题,第2-4行代码的作用是使得窗口最大化。第1行中的requestWindowFeature()是Activity类的方法,该方法的作用是设置窗口的特性,Window.FEATURE_NO_TITLE是抽象类Window的常量,表示不显示窗口顶部的标题;第2行中的getWindow()方法是Activity类的方法,该方法的作用是获取当前视图的窗口,返回值是Window类的对象,通过获取到的Window类对象调用该类的setFlags()方法来设置应用程序窗口的属性,WindowManager.LayoutParams.FLAG_FULLSCREE表示应用程序的窗口最大化。

4 球员头像初始位置的确定

在设置了应用程序窗口的属性之后,接下来确定要显示的球员头像的初始位置,即PlayerView类的currentX和currentY变量。

在确定图像初始位置时,首先要获取设备屏幕的宽度和高度,之后根据设备屏幕的高度和宽度来这支图像的初始位置。

4.1 获取设备屏幕的大小

在MainActivity类的onCreate()方法中,有如下代码

    1   WindowManager windowManager =getWindowManager();

    2   Displaydisplay = windowManager.getDefaultDisplay();

    3   int screenWidth = display.getWidth();

    4   int screenHeight = display.getHeight();

其中,第1行的作用是获取获取应用程序窗口的窗口管理器,getWindowManager()是Activity类的方法;第2行的作用是通过窗口管理器获取到应用程序窗口默认的显示对象,即Display类对象;第3-4行通过显示对象调用Display类的getWidth()和getHeight()方法获取应用程序窗口的宽度和高度。

4.2 指定球员头像的初始位置

接下来根据获取到的设备屏幕大小来指定球员头像的初始位置。

        playerView.currentX = screenWidth/2;

       playerView.currentY = screenHeight - 80;

其中,playerView是在2中创建的自定义视图的对象。

5 视图对于按键事件的监听

当用户按下模拟设备的按键时,自定义视图中的球员头像会相应移动。因此,需要对自定义视图添加事件监听器。在事件监听器中的事件处理器里,对按键信息进行相应处理。

5.1 添加按键事件监听器

在MainActivity类的onCreate()函数中,为自定义视图添加按键事件监听器。

playerView.setOnKeyListener(new OnKeyListener(){

........

}

);

5.2 重载按键事件处理器

在OnKeyListener()方法中,重载按键事件处理器,即onKey()方法。当焦点位于视图上时,点击设备按键就会调用该方法。

           @Override

           publicboolean onKey(View source, int keyCode, KeyEvent event)

           {

.......

         }

其中,参数source是焦点所在的视图,keyCode是所按下的按键,event是包含了事件信息的按键对象。

5.3 按键事件的处理

在重载的按键事件处理器onKey()中,对按键事件进行处理,从而判断出用户点击的是哪个按键,最后根据不同的按键进行不同的处理。

1             switch(event.getKeyCode())

2             {

3             case KeyEvent.KEYCODE_S:

4                 planeView.currentY += speed;

5                 break;

6                 case KeyEvent.KEYCODE_W:

7                 planeView.currentY -= speed;

8                 break;

9             case KeyEvent.KEYCODE_A:

10                planeView.currentX -= speed;

11                break;

12            case KeyEvent.KEYCODE_D:

13                planeView.currentX += speed;

14                break;

15              }

16               playerView.invalidate();

其中,第1行中通过KeyEvent类的对象event调用该类的getKeyCode()方法,获取按键事件对应的按键码(key code)。3-14行对按键码进行判断,KeyEvent.KEYCODE_S是KeyEvent类的常量,表示按键S,则对球员头像的纵坐标进行增加的处理,speed是增加的步进,在MainActivity类的onCreate()方法中定义:

private int speed = 12;

同理,KeyEvent.KEYCODE_W、KeyEvent.KEYCODE_A、KeyEvent.KEYCODE_D表示按键W、A和D,分别对球员头像的纵坐标和横坐标进行处理。第16行通过自定义类的对象playerView调用该类的invalidate()方法,该方法使得整个视图失效,需要重画该视图。此时,会调用自定义视图的onDraw()方法,对球员头像进行重画,达到位置移动的效果。

6 小结

今天学习了视图按键事件的监听。首先新建了一个自定义的视图,在自定义视图中,重新编了其构造函数和onDraw()方法。之后将该视图用于应用程序,最后添加该视图的按键监听器,在监听器中对KeyEvent类型的参数进行处理,判断用户按下哪个按键,之后对球员头像的坐标进行处理,最后使得整个视图失效,重绘视图。

http://www.lbrq.cn/news/772201.html

相关文章:

  • 怎么在自己的电脑上做网站/怎么去营销自己的产品
  • 汽车门店管理系统/电脑优化软件排行榜
  • 漳州做网站开发/百度关键词热搜
  • 电子商城网站建设的实训内容记述/免费建立个人网站申请
  • 重庆政务服务网/重庆企业网站排名优化
  • 金站网.营销型网站/hao123影视
  • 学做网站论坛 可以吗/博客seo教程
  • 网站建设 上/做网站
  • 辽宁沈阳做网站/新闻发布系统
  • 网站运营每天做的/怎么自己做一个网站
  • wordpress remove_query_arg/百度竞价优化
  • 用php写的网站/爱站网长尾关键词挖掘查询工具
  • 镇江网站建设价位/如何做电商 个人
  • 云浮 网站建设/免费网络营销平台
  • 网站建设免费空间哪里有/seo优化范畴
  • 盐城专业做网站的公司/如何做网页链接
  • 网站 设计 深圳/安卓优化神器
  • 哪些网站可宣传/小说关键词自动生成器
  • 优良的定制网站建设/数据分析师报考条件
  • 网站建设解决方案/网络怎么推广自己的产品
  • 阿里云 网站部署/网络营销的12种手段
  • 网站建设商虎小程序/宿迁网站建设制作
  • 资阳公司网站建设/关键词文案生成器
  • 高校对网站建设的重视/线下推广
  • 杭州网站建设路/十大少儿编程教育品牌
  • 中山网站建设是什么/新平台推广赚钱
  • 鞍山网站制作报价/今日军事新闻最新消息中国
  • 游戏加盟网/宁波seo优化费用
  • 北京建设厅网站查询/公众号推广平台
  • 全套做网站/游戏推广员判几年
  • Spring Boot初级概念及自动配置原理
  • 微软正式将GPT-5接入Microsoft Copilot Studio(国际版)
  • “生成式UI革命”:Tambo AI如何让你的应用“开口说话、动手搭界面” | 全面深剖、案例实践与未来展望
  • 从裸机到云原生:Linux 操作系统实战进阶的“四维跃迁”
  • 【软考中级网络工程师】知识点之 IP QoS 技术
  • 线性代数 · 矩阵 | 最小多项式