Advertisement
nigatigga

position

Aug 12th, 2014
371
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.59 KB | None | 0 0
  1. package com.ibc.android.demo.appslist.app;
  2.  
  3. import android.app.Activity;
  4. import android.content.Context;
  5. import android.content.SharedPreferences;
  6. import android.content.pm.PackageInfo;
  7. import android.content.pm.PackageManager;
  8. import android.graphics.drawable.Drawable;
  9. import android.util.Log;
  10. import android.view.LayoutInflater;
  11. import android.view.View;
  12. import android.view.View.OnClickListener;
  13. import android.view.ViewGroup;
  14. import android.widget.BaseAdapter;
  15. import android.widget.CheckBox;
  16. import android.widget.TextView;
  17.  
  18. import com.spicycurryman.getdisciplined10.app.R;
  19.  
  20. import java.util.List;
  21.  
  22. public class ApkAdapter extends BaseAdapter {
  23.  
  24.  
  25.  
  26.     //Pastebin link:  http://pastebin.com/LGRicg4U , http://pastebin.com/c4WfmhMK
  27.  
  28.     SharedPreferences sharedPrefs;
  29.     List<PackageInfo> packageList;
  30.     Activity context;
  31.     PackageManager packageManager;
  32.     boolean[] itemChecked;
  33.  
  34.     String PACKAGE_NAME;
  35.  
  36.  
  37.  
  38.  
  39.  
  40.     public ApkAdapter(Activity context, List<PackageInfo> packageList,
  41.                       PackageManager packageManager) {
  42.         super();
  43.         this.context = context;
  44.         this.packageList = packageList;
  45.         this.packageManager = packageManager;
  46.         itemChecked = new boolean[packageList.size()];
  47.  
  48.  
  49.  
  50.     }
  51.  
  52.  
  53.     private class ViewHolder {
  54.         TextView apkName;
  55.         CheckBox ck1;
  56.     }
  57.  
  58.     public int getCount() {
  59.         return packageList.size();
  60.     }
  61.  
  62.     public Object getItem(int position) {
  63.         return packageList.get(position);
  64.     }
  65.  
  66.     public long getItemId(int position) {
  67.         return 0;
  68.     }
  69.  
  70.     @Override
  71.     public View getView(final int position, View convertView, ViewGroup parent) {
  72.         final ViewHolder holder;
  73.  
  74.         LayoutInflater inflater = context.getLayoutInflater();
  75.  
  76.         if (convertView == null) {
  77.             convertView = inflater.inflate(R.layout.installed_apps, null);
  78.             holder = new ViewHolder();
  79.  
  80.             holder.apkName = (TextView) convertView
  81.                     .findViewById(R.id.appname);
  82.             holder.ck1= (CheckBox)convertView
  83.                     .findViewById(R.id.checkBox1);
  84.  
  85.             convertView.setTag(holder);
  86.             //holder.ck1.setTag(packageList.get(position));
  87.  
  88.         } else {
  89.  
  90.             holder = (ViewHolder) convertView.getTag();
  91.         }
  92.  
  93.  
  94.  
  95.         // ViewHolder holder = (ViewHolder) convertView.getTag();
  96.         PackageInfo packageInfo = (PackageInfo) getItem(position);
  97.  
  98.  
  99.  
  100.         Drawable appIcon = packageManager
  101.                 .getApplicationIcon(packageInfo.applicationInfo);
  102.  
  103.         PACKAGE_NAME = packageInfo.packageName;
  104.  
  105.         final String appName = packageManager.getApplicationLabel(
  106.                 packageInfo.applicationInfo).toString();
  107.         appIcon.setBounds(0, 0, 80, 80);
  108.         holder.apkName.setCompoundDrawables(appIcon, null, null, null);
  109.         holder.apkName.setCompoundDrawablePadding(15);
  110.         holder.apkName.setText(appName);
  111.  
  112.         holder.ck1.setChecked(false);
  113.  
  114.  
  115.         if (itemChecked[position])
  116.             holder.ck1.setChecked(true);
  117.         else
  118.             holder.ck1.setChecked(false);
  119.  
  120.         Log.d("just loaded??", appName);
  121.  
  122.  
  123.         Log.d("just loaded 2?", appName+position);
  124.  
  125.  
  126.         for(int i= 0; i<packageList.size(); i++){
  127.             sharedPrefs = context.getSharedPreferences(String.valueOf(i), Context.MODE_PRIVATE);
  128.             holder.ck1.setChecked(sharedPrefs.getBoolean(String.valueOf(i),false));
  129.  
  130.         }
  131.  
  132.         holder.ck1.setOnClickListener(new OnClickListener() {
  133.             @Override
  134.             public void onClick(View v) {
  135.  
  136.  
  137.  
  138.  
  139.  
  140.                 SharedPreferences.Editor editor = context.getSharedPreferences(String.valueOf(position), Context.MODE_PRIVATE).edit();
  141.  
  142.                 if (holder.ck1.isChecked()) {
  143.                     itemChecked[position] = true;
  144.                     holder.ck1.setChecked(true);
  145.                     Log.i("This is", " checked: " + position);
  146.                     editor.putBoolean(String.valueOf(position), true);
  147.                     Log.d("put true", appName+position);
  148.  
  149.                     editor.apply();
  150.  
  151.                 } else {
  152.                     itemChecked[position] = false;
  153.                     holder.ck1.setChecked(false);
  154.                     Log.i("This is", " not checked: " + position);
  155.                     editor.putBoolean(String.valueOf(position), false);
  156.                     Log.d("put false", appName+position);
  157.  
  158.                     editor.apply();
  159.  
  160.                 }
  161.  
  162.             }
  163.  
  164.  
  165.         });
  166.  
  167.  
  168.  
  169.  
  170.         return convertView;
  171.  
  172.     }
  173.  
  174.  
  175.  
  176.  
  177. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement