step1:记分器简介

这是一个可以记录篮球赛中比赛双方成绩的应用,得分分为两分球、三分球、罚球(一分),比赛结束后可以重置。最终效果如图所示:

记分器应用.jpg

step2:创建工程项目

小弟用的是Android Studio,API15,空模版。

紧接着是三部曲:

1.选择所用view和数量:

views.jpg

显而易见,两个TextView,三个Button。

2.选择position views:

因为是一个简单的垂直布局,所以选择LinearLayout线性布局。

3.style of views:

TextView要居中显示,三个按钮都要在水平方向占满整个视图。还有合适的内边距(padding:4dp)和外边距(layout_margin:8dp),你也可以选择自己喜欢的方式。

贴上代码(MainActivity.xml):

<?xml version="1.0" encoding="utf-8"?>

android:id="@+id/activity_main"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical" tools:context="com.example.administrator.countcounter.MainActivity">

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="Team A"

android:gravity="center_horizontal"

android:padding="4dp"/>

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="0"

android:gravity="center_horizontal"

android:padding="4dp"/>

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="+2point"

android:layout_margin="8dp"/>

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="+3point"

android:layout_margin="8dp"/>

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="free goal"

android:layout_margin="8dp"/>

使文本居中的方法是添加属性android:gravity="center_horizontal"

这个属性还有垂直居中(center_vertical)、居中(center)等。如果你发现文本没有居中可能是你的TextView的宽度不够大。

这时尽管你的设置居中了,但它是针对于蓝色框的宽度居中。

设置宽度后.jpg

这样才是对的。

step3创建方法

现在,按钮并不会做任何事情,我们需要将xml文件与java文件关联起来。

在MainActivity.java文件中MainActivity方法中添加一个新的方法,代码如下:

/**

*Displays the given score for Team A.

*/

public void displayForTeamA(int score) {

TextView scoreView = (TextView) findViewById(R.id.team_a_score); scoreView.setText(String.valueOf(score));

}

你同时需要设置开启AutoImport,并将显示分数的TextView的id改为:team_a_score

android:id="@+id/team_a_score"

现在我们需要一个全局变量来记录A队的得分,声明并初始化为0。

int scoreTeamA = 0;

我们需要为每一个得分按钮设计方法:

public void threePointA(View view) {

scoreTeamA = scoreTeamA + 3;

displayForTeamA(scoreTeamA);

}

public void freeGoalA(View view) {

scoreTeamA = scoreTeamA + 1;

displayForTeamA(scoreTeamA);

}

public void twoPointA(View view) {

scoreTeamA = scoreTeamA + 2;

displayForTeamA(scoreTeamA);

}

然后在xml文件中添加调用:

android:onClick="threePointA"

android:onClick="twoPointA"

android:onClick="freeGoalA"

到这里你会发现你的应用已经可以加分了。

时间有限,先写到这里。

android studio计分器,篮球赛记分器应用(Android)(一)相关推荐

  1. Android Studio简易音乐播放器设计作业

    Android Studio简易音乐播放器设计作业 实验成功展示 实验代码 MainActivity.java XML文件 class文件 利用BroadcastReceiver模拟音乐播放器,实现播 ...

  2. Android Studio 4.0 重磅发布!Android 11 Bata 版来了!

    点击"开发者技术前线",选择"星标" 在看|星标|留言,  真爱 作者 | Adarsh Fernando 译者 | 王强    回复"666&quo ...

  3. android 模拟器应用未安装,当我在Android Studio中运行它时,Android应用程序未安装在模拟器或设备上...

    我正在开发Android应用程序.在我的应用程序中,我正在测试在设备和模拟器上运行的应用程序.这是我的第三个Android应用程序开发.当我开发其他应用程序时,应用程序会自动安装在设备上或模拟器上的启 ...

  4. 太秀了!Android Studio 4.0 重磅来袭!Android 11 Bata 版来了!

    点击上方 "程序员小乐"关注, 星标或置顶一起成长 每天凌晨00点00分, 第一时间与你相约 每日英文 One day, you'll be just a memory for s ...

  5. android studio device功能,Android Studio 3.0找不到Android Device Monitor

    因为自Android Studio 3.0开始弃用Android Device Monitor,Android Developers官网上的原话是: Android Device Monitor is ...

  6. Android Studio同步失败设置代理,Android Studio如何设置代理?

    由于使用Android Studio期间,很多时候都要访问谷歌官方服务器,但是由于一些其他原因,会导致连接不上或者速度很慢,那就需要我们设置一下国内的镜像代理了.下面,让我们一起来看看Android ...

  7. android studio占内存大小,极大精简android studio在C盘的内存

    在C盘占很大的内存大约就2种原因: 1.SDK占内存太大 2.AVD模拟器占内存太大 第一种情况,移动SDK(用android studio不需要配置环境变量) 先移动C盘的Android目录,里面是 ...

  8. (转)Android Studio Error:Failed to resolve: com.android.support:appcompat-v7:25.1.0解决方案

    (转)Android Studio Error:Failed to resolve: com.android.support:appcompat-v7:25.1.0解决方案 参考文章: (1)(转)A ...

  9. 关于Android Studio单元测试中“Method d in android.util.Log not mocked.”问题的解决。

    关于Android Studio单元测试中"Method d in android.util.Log not mocked."问题的解决. 点开链接 这就是解决方案.(这主要是由于 ...

最新文章

  1. 继天元开源后,旷视又亮出“看家本领”:推出Brain++商业版
  2. 信息安全技术 网络安全事件应急演练指南_省局举办网络安全培训讲座
  3. 区块链BaaS云服务(28)TOP Network 之数据结构
  4. android视频分享功能吗,Unity 调用 Android 分享功能(基于ShareRec SDK视频分享)
  5. rust投递箱连接箱子_拆了的快递包装丢哪里?闵行试行24小时开放的网购包装回收箱...
  6. python爬虫re_python网络爬虫之三re正则表达式模块
  7. MacBook Pro 高功率模式:是如何工作的?
  8. 带有权限设置的Excel协同编辑
  9. iis展示下载 MP4视频的一些心得
  10. X5内核视频之问答汇总
  11. 计算机设置u盘启动,③、设置U盘启动教程
  12. (十)损失函数与反向传播
  13. Photoshop CS 5 注册方法
  14. 微生物-肠道-脑轴:新的治疗机会
  15. PHP笔记03-数组1
  16. 与JDBC相识的第一天超级NICE
  17. 程序人生 - 西瓜霜能吃下去吗?
  18. 短路保护、过载保护、零压保护的概念
  19. Unity3D 调用其他脚本函数方法
  20. 网页PDF下载,有了这3种方法,文档随便下

热门文章

  1. html列出目录文件大小,Windows下显示目录大小及文件个数
  2. 解析机器人编程与积木搭建的乐趣
  3. Android中的自定义View以及绘图工具
  4. 投放共享单车需要什么批文_共享单车须经审批方可投放
  5. 在加入ALL函数后,CALCULATE函数内外筛选器的交互过程
  6. 抖音小店无货源——手把手教你开店,新手必看这七点
  7. 摄影 后期图片PS,PS过分 是否必要?
  8. 关于densenet的改进:condensenet、VoVNet
  9. 详述微信内推广H5和棋牌类APP如何做好域名防封处理
  10. Maven项目构建工具