安全卫士总结8期-day_第1页
安全卫士总结8期-day_第2页
安全卫士总结8期-day_第3页
安全卫士总结8期-day_第4页
安全卫士总结8期-day_第5页
已阅读5页,还剩10页未读, 继续免费阅读

付费下载

下载本文档

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

文档简介

1、1. 1ivity1. 1ivity ?xml =1.0 encoding=utf-android:text=已加android:textColor=#000000 android:layout_height=match_parent3Apppublic class private AppLockOpenHelper private Context public (Context this.context = openHelper = new *param param public void add(String Uri uri = Uri.parse(context.getContentRe

2、solver().notifyChange(uri , null);Databasedatabase=openHelper.getWritableDatabase(); ContentValues values = new ContentValues(); values.put(packname, number);database.insert(applock,null,values); public void delete(String Databasedatabase =database.delete(applock, packname=?, new public void update(

3、String number,String Databasedatabase =ContentValues values = newdatabase.delete(applock, packname=?, new public void update(String number,String Databasedatabase =ContentValues values = newdatabase.update(applock,values,packname=?,newStringnumber); find(String Databasedatabase =Cursorquery = databa

4、se.query(applock, null,packname=? , Stringnumber,null,null,null); if (query.moveToNext() return else return public List Databasedatabase=openHelper.getReadableDatabase(); List list = new ArrayList();Cursorcursor = database.query(applock, new null, null, null, null); String packname = return list;pub

5、lic List Databasedatabase =List list =new Stringsql=selectoffset ? fromblacknumberorderby_iddesclimitCursor cursor = database.rawQuery(sql ,Stringindex+);/(blacknumber,newStringnumber,m null, null, null);, null, String number = =new String = BlackNumberInfo return list;total = Database =Cursorcursor

6、 = database.rawQuery(select count(*) String number = =new String = BlackNumberInfo return list;total = Database =Cursorcursor = database.rawQuery(select count(*) if (cursor.moveToNext() total = 4AppLockOpenHelper5com.itheima.mobileSafe.engineAppInfoProviderpublic class AppLockOpenHelperOpenHelper pu

7、blic AppLockOpenHelper(Context context) super(context, applock.db, null, public void Database db) String sql = create table applock(_idrimarykey autoincrement,packname varchar(20);public void Database ) if (flags & info.applicationInfo.FLAG_EXTERNAL_STORAGE) = 0) /0ROMif (flags & info.applicationInf

8、o.FLAG_EXTERNAL_STORAGE) = 0) /0ROM else return 6AppLockActivitypublic class AppLockActivityivityimplements OnClickListener private TextView tv_lock; private TextView tv_unlock; inearLayout ll_lock; inearLayout ll_unlock; istView lv_lock_list; istViewlv_unlock_list; ist appInfos;istunloackappInfos;

9、ist lockedappInfos; private ApplockAdapter adapter; private TextView tv_unlock_count; private TextView tv_lock_count; private AppLockprivate ApplockAdapter private ApplockAdapter protected void onCreate(Bundle savedInstane) /tv_lock = (TextView) findViewById(R.id.tv_lock); tv_unlock = (TextView) fin

10、dViewById(R.id.tv_unlock); ll_lock = (LinearLayout) findViewById(R.id.ll_lock); ll_unlock=(LinearLayout)findViewById(R.id.ll_unlock);lv_lock_list = (ListView) findViewById(R.id.lv_loack_list); lv_unlock_list=(ListView)findViewById(R.id.lv_unloack_list); appInfos = AppInfoProvider.getAllAppInfos(this

11、); tv_lock_count lv_lock_list = (ListView) findViewById(R.id.lv_loack_list); lv_unlock_list=(ListView)findViewById(R.id.lv_unloack_list); appInfos = AppInfoProvider.getAllAppInfos(this); tv_lock_count (TextView) =(TextView) = new lockedappInfos = new = new for(AppInfo info find if (find) else unlock

12、Adapter=newApplockAdapter(true); lockAdapter = new ApplockAdapter(false); privateclass ApplockAdapterextends isFlag = true;/public this.isFlag = getCount() if (isFlag) tv_unlock_count.setText(return else tv_lock_count.setText(return public Object ition) return public long return ition) public View g

13、etView( final View view; ViewHolderholder;ition, View convertView, ViewGroup parent) if(convertView != null) view else view= (ViewHolder) return public long return ition) public View getView( final View view; ViewHolderholder;ition, View convertView, ViewGroup parent) if(convertView != null) view el

14、se view= (ViewHolder) View.inflate(AppLockActivity.this,= newholder.iv_icon holder.tv_name (ImageView) (TextView) = (ImageView) final AppInfo if (isFlag) = else = us.setOnClickListener(new OnClickListener() canClick = public void onClick(View v) if (!canClick) return if(isFlag/点击未加锁的 canClick = fals

15、e;/TranslateAnimation animation =TranslateAnimation(Animation.RELATIVE_TO_SELF,0, /TranslateAnimation animation =TranslateAnimation(Animation.RELATIVE_TO_SELF,0, 1.0f,Animation.RELATIVE_TO_SELF,0,Animation.RELATIVE_TO_SELF,0); new tDelayed(new Runnable() public void run() canClick = true;, else /点击加

16、锁的 canClickfalse;TranslateAnimation animation =TranslateAnimation(Animation.RELATIVE_TO_SELF,0, -Animation.RELATIVE_TO_SELF,0, new tDelayed(new Runnable() public void run() canClick = true;, return sic class ViewHolder ImageViewiv_icon; TextView tv_name;ImageView sic class ViewHolder ImageViewiv_ico

17、n; TextView tv_name;ImageView public void onClick(View v) switch (v.getId() case R.id.tv_unlock: case R.id.tv_lock: ?xml =1.0 encoding=utf-android:src=drawable/app/2. 1, adapter2. 1, adaptergetItemViewType方法,根据ListViewitem返回当前的类型代码如下2,adapter* 根据位置返回当前item的类ition)ifition0itionmUserAppList.size()1/ 发

18、现是头布return0;/ 头布elsereturn1;/ 普通布android:textSize=19sp /android:src=drawable/unlock /classAppInfoAdapterextendsBaseAdapter returnmUserAppList.size(mSystemAppList.size(2;/ 注意,要加两个头布局位publicclassAppInfoAdapterextendsBaseAdapter returnmUserAppList.size(mSystemAppList.size(2;/ 注意,要加两个头布局位publicAppInfoge

19、tItem( if (ition = 0 |returnition)itionmUserAppList.size()1/ 发现是头布/ 根据当ition来返回相应的ifitionmUserAppList.size()1/ 用户应returnelse/ 系统应returnition-ition-mUserAppList.size()-publiclongition)* 根据位置返回当前item的类ition)ifition=0itionmUserAppList.size()1/ 发现是头布return0;/ 头布elsereturn1;/ 普通布* 返回总共有多少种类型, 该方法必须实现, 系统

20、会根据该方法判断需要缓存几个getViewTypeCount() returnpublicViewition,ViewconvertView,ViewGroupparent)publicViewition,ViewconvertView,ViewGroupparent)系统会根据当前item的类型,返回准确的convertView, 有几种类型,就会缓存几种type=switch(type) case 0:HeaderViewHolderheadHolder; if (convertView = null) convertView=R.layout.list_appinfo_header, headHolder = new HeaderViewHolder(); headHolder.tvHead=(TextView)convertViewln(初始化头布局else

温馨提示

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

评论

0/150

提交评论