计科1141班胡志泉安卓实验6 - 数据存储与访问_第1页
计科1141班胡志泉安卓实验6 - 数据存储与访问_第2页
计科1141班胡志泉安卓实验6 - 数据存储与访问_第3页
计科1141班胡志泉安卓实验6 - 数据存储与访问_第4页
计科1141班胡志泉安卓实验6 - 数据存储与访问_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.GDOU-B-11-112广东海洋大学学生实验报告书(学生用表)实验名称实验6:数据存储与访问课程名称移动编程课程号16242215x0学院(系)数学与计算机专业计算机科学与技术班级计科1141班学生姓名学号实验地点 科技楼425实验日期2017.4.1一 、实验目的 1.熟悉在Android Studio开发环境下编写Android应用程序的流程;l 2.理解在Android Studio开发环境下进行用户界面设计的基本方法;l 3.掌握应用Android碎片控件Fragment开发适用于大屏幕的应用程序的方法。 4.掌握应用Android存储方法SharePreferences的应用方法

2、。二 、实验内容 在Android Studio开发环境下,使用Android的Fragment碎片控件、TextView文本标签控件、ListView列表控件、FrameLayout框架布局控件,利用SharePreferences存储方法,采用双页显示模式实现一个适用于大屏幕设备的简易新闻阅读器应用程序。3、 实验设备Android Studio 四、实验结果用户界面布局设计采用了水平线性布局方式,分为左右两个碎片Fragment;其中,左侧为新闻标题列表子界面,右侧为新闻详细内容子界面。当点击新闻标题列表中的某一标题时,右侧的Fragment将显示相应新闻标题的详细内容。5、 源代码主A

3、ctivity的布局文件activity_main.xml的源代码 新闻标题列表的布局资源文件news_title_frag.xml的源代码 新闻标题列表子项的布局资源文件news_item.xml的源代码 /textSize属性用于设置文本大小,推荐单位为sp(放大像素, scaled pixels)新闻内容的布局资源文件news_content_frag.xml的源代码 Main_Activity.javapackage com.example.liheng1.mynewsapplication;import android.app.FragmentManager;import andro

4、id.app.FragmentTransaction;import android.content.Context;import android.content.SharedPreferences;import android.support.v7.app.ActionBarActivity;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import java.util.ArrayList;public class MainActivity extends ActionBarActi

5、vity private ArrayList newsArrayList = null; private FragmentManager fManager = null; public MainActivity() Override protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); createNewsSPData(); /调用自定函数,若程序首次运行则生成新闻的 SharedPreferen

6、ces数据文件 / 读取新闻SP数据文件中的数据,以此生成新闻数组列表newsArrayList newsArrayList = new ArrayList(); SharedPreferences SP_NewsCount = getSharedPreferences(NewsCount, Context.MODE_PRIVATE); int newsCount = SP_NewsCount.getInt(Count,0); for (int i = 1; i = newsCount; i+) String = News; / 新闻的文件名前缀 SharedPreferences SP_Ne

7、ws = getSharedPreferences( + i, Context.MODE_PRIVATE); News news = new News(); news.setTitle(SP_News.getString(NewsTitle,null); news.setontent(SP_News.getString(NewsContent, null); newsArrayList.add(news); fManager = getFragmentManager(); NewsTitleFragment ntFragment = new NewsTitleFragment(fManager

8、, newsArrayList); FragmentTransaction ft = fManager.beginTransaction(); /显示新闻标题:将显示新闻标题的Fragment替换掉对应位置处的FrameLayout控件 ft.replace(R.id.fl_title, ntFragment); mit(); Override protected void onStop() super.onStop(); createRunRecordSPData(); /调用自定函数,生成程序首次运行记录的 SharedPreferences数据文件 private void

9、createNewsSPData() String RUN_RECORD = AppRunRecord; / 记录 App是否首次运行的SP文件的文件名 String FIRST_RUN = FirstRun; / 首次运行的标签名 String NEWS_COUNT = NewsCount; / 记录 新闻数量的SP文件的文件名 String COUNT = Count; / 新闻数量的标签名 String = News; / 新闻的文件名前缀 SharedPreferences SP_RunRecord = getSharedPreferences(RUN_RECORD, Context.

10、MODE_PRIVATE); if(SP_RunRecord.getBoolean(FIRST_RUN,true) int newsCount = 20; for(int i=1;i=newsCount;i+) SharedPreferences SP_News = getSharedPreferences(); SharedPreferences.Editor editor_News = SP_News.edit(); String newsTitle = 新闻标题 + i + :若能正常显示此标题,则说明程序已经成功一半了; String newsContent = 这是新闻标题 + i

11、+ 所对应的新闻内容,内容如下: + Fragment很多时候都是在平板应用开发中使用的,主要是为了解决屏幕空间 + 不能充分利用的问题。n 本实验开发了一个适用于平板的简易新闻 + 阅读应用程序,在屏幕的左侧显示新闻列表,而在屏幕的右侧显示对应标题 + 的新闻内容。n 如果能够正常显示上述文字内容,则说明本程序 + 已经成功了; editor_News.putString(NewsTitle,newsTitle); editor_News.putString(NewsContent,newsContent); editor_Nmit(); SharedPreferences S

12、P_NewsCount = getSharedPreferences(NEWS_COUNT,Context.MODE_PRIVATE); SharedPreferences.Editor editor_NewsCount = SP_NewsCount.edit(); editor_NewsCount.putInt(COUNT,newsCount); editor_NewsCmit(); private void createRunRecordSPData() String RUN_RECORD = AppRunRecord; / 记录 App是否首次运行的SP文件的文件名 St

13、ring FIRST_RUN = FirstRun; / 首次运行的标签名 SharedPreferences SP_RunRecord = getSharedPreferences(RUN_RECORD,Context.MODE_PRIVATE); if(SP_RunRecord.getBoolean(FIRST_RUN,true) SharedPreferences.Editor editor = SP_RunRecord.edit(); editor.putBoolean(FIRST_RUN,false); mit(); /*Override public boole

14、an onCreateOptionsMenu(Menu menu) / Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_main, menu); return true; Override public boolean onOptionsItemSelected(MenuItem item) / Handle action bar item clicks here. The action bar will / automatically handle clicks on the Home/Up button, so long / as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); /noinspection SimplifiableIfState

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论