| package com.android.settings.applications; |
| |
| import com.android.settings.R; |
| |
| import android.content.Context; |
| import android.util.Log; |
| import android.view.LayoutInflater; |
| import android.view.View; |
| import android.widget.CheckBox; |
| import android.widget.ImageView; |
| import android.widget.TextView; |
| |
| // View Holder used when displaying views |
| public class AppViewHolder { |
| public ApplicationsState.AppEntry entry; |
| public View rootView; |
| public TextView appName; |
| public ImageView appIcon; |
| public TextView appSize; |
| public TextView disabled; |
| public CheckBox checkBox; |
| |
| static public AppViewHolder createOrRecycle(LayoutInflater inflater, View convertView) { |
| if (convertView == null) { |
| convertView = inflater.inflate(R.layout.manage_applications_item, null); |
| |
| // Creates a ViewHolder and store references to the two children views |
| // we want to bind data to. |
| AppViewHolder holder = new AppViewHolder(); |
| holder.rootView = convertView; |
| holder.appName = (TextView) convertView.findViewById(R.id.app_name); |
| holder.appIcon = (ImageView) convertView.findViewById(R.id.app_icon); |
| holder.appSize = (TextView) convertView.findViewById(R.id.app_size); |
| holder.disabled = (TextView) convertView.findViewById(R.id.app_disabled); |
| holder.checkBox = (CheckBox) convertView.findViewById(R.id.app_on_sdcard); |
| convertView.setTag(holder); |
| return holder; |
| } else { |
| // Get the ViewHolder back to get fast access to the TextView |
| // and the ImageView. |
| return (AppViewHolder)convertView.getTag(); |
| } |
| } |
| |
| void updateSizeText(CharSequence invalidSizeStr, int whichSize) { |
| if (ManageApplications.DEBUG) Log.i(ManageApplications.TAG, "updateSizeText of " + entry.label + " " + entry |
| + ": " + entry.sizeStr); |
| if (entry.sizeStr != null) { |
| switch (whichSize) { |
| case ManageApplications.SIZE_INTERNAL: |
| appSize.setText(entry.internalSizeStr); |
| break; |
| case ManageApplications.SIZE_EXTERNAL: |
| appSize.setText(entry.externalSizeStr); |
| break; |
| default: |
| appSize.setText(entry.sizeStr); |
| break; |
| } |
| } else if (entry.size == ApplicationsState.SIZE_INVALID) { |
| appSize.setText(invalidSizeStr); |
| } |
| } |
| } |