安卓开发实验报告.doc_第1页
安卓开发实验报告.doc_第2页
安卓开发实验报告.doc_第3页
安卓开发实验报告.doc_第4页
安卓开发实验报告.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

安卓开发实验报告目录一、 页面跳转二、 长按图标抖动以及显示删除一、 页面跳转功能:通过点击button实现2个activity之间的跳转。1.设置监听器监听点击button2.使用intent传输数据完整代码1.ui_test.javapublic class UI_Test extends Activity Override protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.incident_activity_1); Button bt = (Button)findViewById(R.id.login); bt.setOnClickListener(new OnClickListener(); class OnClickListener implements View.OnClickListener public void onClick(View v) EditText name = (EditText)findViewById(R.); EditText password = (EditText)findViewById(R.id.password); Bundle data=new Bundle(); data.putString(name, name.getText().toString(); data.putString(password, password.getText().toString(); Intent intent = new Intent(UI_Test.this,UI_Result.class); intent.putExtras(data); startActivity(intent); 2.ui_result.javapublic class UI_Result extends Activity Override protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.incident_activity_2); TextView name = (TextView)findViewById(R.Show); TextView password = (TextView)findViewById(R.id.passwordShow); Intent intent=getIntent(); Bundle result = intent.getExtras(); name.setText(您的用户名为: +result.getString(name); password.setText(您的密码为: +result.getString(password); 3.activity_1.xml 4.activity_2.xml 二、 长按图标抖动以及显示删除功能:将app列举在界面上,并且长按图标使图标进行抖动以及显示删除图标。1. 初始化一个gridview的适配器 2. 通过不停转动图标实现图标的抖动以及添加删除图标3. 添加监听器实现长按图标使图标抖动及显示删除完整代码1. main_activity.java public class MainActivity extends Activity private PackageManager mPackageManager;private GridView mAppGrid;private List mAppList;private Drawable mColorDrawable;private GridViewAdapter mAdapter = null;private static int mAppState = 0; private static final int APP_DELFINISHED = 0x1;public MainActivity() / TODO Auto-generated constructor stubOverridepublic boolean onKeyDown(int keyCode, KeyEvent event) if (keyCode = KeyEvent.KEYCODE_BACK & event.getRepeatCount() = 0)if(mAppState = 1)/resetAllAppIcon();refreshAppList();return true;return super.onKeyDown(keyCode, event);Overrideprotected void onCreate(Bundle savedInstanceState) / TODO Auto-generated method stubsuper.onCreate(savedInstanceState);mAppList = new ArrayList();getAppList(mAppList);setContentView(R.layout.activity_main);mAppGrid = (GridView) findViewById(R.id.app_list_grid);mAppGrid.setNumColumns (calculatorNumColumn();mAdapter = new GridViewAdapter(mAppList,this,mPackageManager);mAppGrid.setAdapter(mAdapter);mAppGrid.setOnItemClickListener(clickListener); mAppGrid.setOnItemLongClickListener(itemLongClickListener); /mAppGrid.setOnTouchListener(new PicOnTouchListener();Overrideprotected void onResume() / TODO Auto-generated method stubsuper.onResume();Overrideprotected void onPause() / TODO Auto-generated method stubsuper.onPause();Overrideprotected void onDestroy() / TODO Auto-generated method stubsuper.onDestroy();OnItemClickListener clickListener = new OnItemClickListener() Overridepublic void onItemClick(AdapterView parent, View view, int position,long id) if(mAppState = 1)PackageInfo info = mAppList.get(position);/ActivityUri packageURI = Uri.parse(package: + info.applicationInfo.packageName);Intent uninstallIntent = new Intent(Intent.ACTION_DELETE, packageURI);startActivityForResult(uninstallIntent,APP_DELFINISHED); ; Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) / TODO Auto-generated method stubsuper.onActivityResult(requestCode, resultCode, data);OnItemLongClickListener itemLongClickListener = new OnItemLongClickListener() Overridepublic boolean onItemLongClick(AdapterView arg0, View arg1, int arg2, long arg3) / TODO Auto-generated method stub animAllAppIcon(); return true; ;private void getAppList(List list)mPackageManager = getPackageManager();List packs = mPackageManager.getInstalledPackages(0);if(packs != null & packs.size() 0)for(PackageInfo info: packs)if(info.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) = 0 &(info.applicationInfo.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP)=0)list.add(info);private void refreshAppList()mAppList.clear();getAppList(mAppList);mAdapter.setData(mAppList);mAdapter.notifyDataSetChanged();mAppState = 0;private void animAllAppIcon()int nCount = mAppGrid.getChildCount();mColorDrawable = mAppGrid.getSelector();mAppGrid.setSelector(new ColorDrawable(Color.TRANSPARENT);for(int i = 0 ;i nCount; i +)View v = mAppGrid.getChildAt(i);RelativeLayout layout;Animation shake;/if(i % 2 = 0)shake = AnimationUtils.loadAnimation(MainActivity.this, R.anim.icon_anim_left);shake.reset();shake.setFillAfter(true);/else/shake = AnimationUtils.loadAnimation(/MainActivity.this, R.anim.icon_anim_right);/shake.reset();/shake.setFillAfter(true);/v.startAnimation(shake);layout = (RelativeLayout)v.findViewById(R.id.view_delete);layout.setVisibility(View.VISIBLE);mAppState = 1;private void resetAllAppIcon()int nCount = mAppGrid.getChildCount();mAppGrid.setSelector(mColorDrawable);for(int i = 0 ;i nCount; i +)View v = mAppGrid.getChildAt(i);RelativeLayout layout;v.clearAnimation();layout = (RelativeLayout)v.findViewById(R.id.view_delete);layout.setVisibility(View.INVISIBLE);mAppState = 0;private int calculatorNumColumn()int nCol = 5;android.view.Display display = getWindowManager().getDefaultDisplay(); int widthPIX = display.getWidth(); final float scale = getResources().getDisplayMetrics().density;nCol = (int)(widthPIX/scale/80);return nCol;/*private class PicOnTouchListener implements OnTouchListener Override public boolean onTouch(View v, MotionEvent event) if(mAppState = 1) resetAllAppIcon(); return true; */ 2. GridViewAdapter public class GridViewAdapter extends BaseAdapter List mAppList = null;PackageManager mPackageManager = null;View mView = null;Context mContext = null;public GridViewAdapter(List list, Context context,PackageManager manager) mAppList = list;mContext = context;mPackageManager = manager;Overridepublic int getCount() return mAppList.size();Overridepublic Object getItem(int position) return mAppList.get(position);Overridepublic long getItemId(int

温馨提示

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

评论

0/150

提交评论