安卓开发实验报告.doc

上传人:jian****018 文档编号:9003577 上传时间:2020-04-02 格式:DOC 页数:13 大小:221.50KB
返回 下载 相关 举报
安卓开发实验报告.doc_第1页
第1页 / 共13页
安卓开发实验报告.doc_第2页
第2页 / 共13页
安卓开发实验报告.doc_第3页
第3页 / 共13页
点击查看更多>>
资源描述
安卓开发实验报告目录一、 页面跳转二、 长按图标抖动以及显示删除一、 页面跳转功能:通过点击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.id.name); 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.id.nameShow); 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 position) return position;Overridepublic View getView(int position, View convertView, ViewGroup parent) ImageView i;TextView t;if (convertView = null) convertView = LayoutInflater.from(mContext).inflate(R.layout.app_list_item, null);i = (ImageView) convertView.findViewById(R.id.img_appicon);t = (TextView) convertView.findViewById(R.id.txt_appname);i.setScaleType(ImageView.ScaleType.FIT_CENTER);PackageInfo info = mAppList.get(position);i.setImageDrawable(info.applicationInfo.loadIcon(mPackageManager);t.setText(info.applicationInfo.loadLabel(mPackageManager);return convertView;public void setData(List list)mAppList = list;3. activity_main.xml 4. app_list_item.xml
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 工作总结


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!