网站换域名影响吗,衡水网站检测公司,wordpress+移动端编辑器,做的电影网站很卡移动平台开放综合实践 1.实验内容2.实验过程2.1 确定基础功能2.2 设计UI界面2.3 编写程序运行代码2.4 在基本功能的基础上丰富功能 3. 代码分析3.1设置按钮的点击事件监听器3.2 比分更新模块3.3 比分存储模块 4. 运行结果5.实践中遇到的问题及解决6.学习感悟与思考参考资料 1.实… 移动平台开放综合实践 1.实验内容2.实验过程2.1 确定基础功能2.2 设计UI界面2.3 编写程序运行代码2.4 在基本功能的基础上丰富功能 3. 代码分析3.1设置按钮的点击事件监听器3.2 比分更新模块3.3 比分存储模块 4. 运行结果5.实践中遇到的问题及解决6.学习感悟与思考参考资料 1.实验内容
因为我是排球场常客打比赛时记分常常会出现这样一些问题微信小程序方便但是疯狂弹广告稍不留神就跳转拼多多淘宝想连着记几局却要求你看一个28秒的广告又一个52秒的广告越看越长。用纸质记分牌吧损耗严重据已知数据蓝队的0、1、9分的分值纸已经摇摇欲坠红队的2更是不知所踪奈何经费紧张队服都得省吃俭用买别说频繁地添置新的纸质记分牌了。所以借着这次机会俺老宁挺身而出自己设计了一款简单的记分app。
2.实验过程
2.1 确定基础功能
我希望这个app首先具有“记分”这一基本功能其次要实现复用还得能够重置比赛的分数最后如果点错了给队伍加错分了还需要有撤销的功能。
2.2 设计UI界面
根据上述功能能够确定下来的有“加分”按钮“撤销”按钮“重置”按钮还需要有用来显示两队分数的分数板块。为了更美观也更符合主题一些我们还可以找一张好看的背景图再调整一下透明度。最后效果如下
2.3 编写程序运行代码
代码其实主要分为三个模块一个是设置按钮的点击事件监听器一个是比分更新模块还有就是比分存储模块。详见下面的代码分析。
2.4 在基本功能的基础上丰富功能
我的设想是增加一个图表能够根据实时得分情况更新从而能直观地看到两支队伍在什么时间得分或者说在哪个阶段集中得分从而反映比赛场上的分数走势以及队员的状态变化等。但是我遇到了一个问题图表是实时更新的也就是说我每点击一次加分按钮图表都要全部更新一次那我之前的数据点如何体现在新的图表中存储在什么地方能够保证它能够一直保存呢这个我一直没有找到好的解决办法导致做出来的图表会在更新分数后被新的分数覆盖所以现在的代码里没有这个功能如果找到了好的解决办法我就回来删掉这段话。
3. 代码分析
3.1设置按钮的点击事件监听器
Override
protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);redTeamScoreTextView findViewById(R.id.red_team_score);blueTeamScoreTextView findViewById(R.id.blue_team_score);redTeamButton findViewById(R.id.red_team_button);blueTeamButton findViewById(R.id.blue_team_button);resetButton findViewById(R.id.reset_button);redTeamUndoButton findViewById(R.id.red_team_undo_button);blueTeamUndoButton findViewById(R.id.blue_team_undo_button);sharedPreferences getSharedPreferences(ScorePreferences, Context.MODE_PRIVATE);redTeamScore sharedPreferences.getInt(redTeamScore, 0);blueTeamScore sharedPreferences.getInt(blueTeamScore, 0);updateScores();redTeamButton.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View v) {redTeamScore;updateScores();saveScores();}});blueTeamButton.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View v) {blueTeamScore;updateScores();saveScores();}});resetButton.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View v) {redTeamScore 0;blueTeamScore 0;updateScores();saveScores();}});redTeamUndoButton.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View v) {if (redTeamScore 0) {redTeamScore--;updateScores();saveScores();}}});blueTeamUndoButton.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View v) {if (blueTeamScore 0) {blueTeamScore--;updateScores();saveScores();}}});
}3.2 比分更新模块
private void updateScores() {redTeamScoreTextView.setText(String.valueOf(redTeamScore));blueTeamScoreTextView.setText(String.valueOf(blueTeamScore));
}3.3 比分存储模块
private void saveScores() {SharedPreferences.Editor editor sharedPreferences.edit();editor.putInt(redTeamScore, redTeamScore);editor.putInt(blueTeamScore, blueTeamScore);editor.apply();
}4. 运行结果 排球比赛记分牌 5.实践中遇到的问题及解决
问题1图表如何实现问题1解决方案仅靠java代码实现可能做出来的界面不会太漂亮我们选择导入MPAndroidChart库问题2无法通过设置dependencies线上下载GitHub上的MPAndroidChart库总是会报语法错但是语法我都让gpt检查过了是没问题的可能是我的AS不支持这样添加依赖的方法。问题2解决方案呕心沥血寻找MPAndroidChart库的jar包
6.学习感悟与思考
这次综合实践其实让我有些挫败因为一开始就是奔着做一个自己感兴趣的软件开始的基本功能的实现很简单。而附加的实时化图表功能捣鼓了很久都没弄出来加上紧张的期末真让人胸中郁结。我的主要精力都花在怎么实现附加功能最后却没个结果竹篮打水一场空真挺叫人难过的。不过好在基础功能实现了以后排球队都要记住我的名字哈哈。
参考资料
MPAndroidChart下载和添加依赖