江苏开放大学Android基础(专)第二次形成性考核作业

微信小程序
资源下载
下载价格10

作业说明:

1.做作业之前首先在封面填上自己的学号和姓名,做完作业后请写上作业完成时间。

2.学习完第5-7单元之后必须完成本次作业,并请在规定时间内通过学习平台提交Word文档形式的电子作业,本次作业占形成性考核总成绩的22%。

作业内容:

学习单元5、6、7中实验部分的项目源文件压缩包。请将源码贴在以下位置,格式为先写文件名后贴代码,如下:

1、

package uk.co.senab.photup.adapters;

import android.content.Context;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

import android.widget.BaseAdapter;

import android.widget.TextView;

import java.util.List;

import uk.co.senab.bitmapcache.BitmapLruCache;

import uk.co.senab.photup.PhotupApplication;

import uk.co.senab.photup.R;

import uk.co.senab.photup.model.Place;

import uk.co.senab.photup.util.Utils;

import uk.co.senab.photup.views.NetworkedCacheableImageView;

public class PlacesAdapter extends BaseAdapter {

    private final List<Place> mItems;

    private final Context mContext;

    private final LayoutInflater mLayoutInflater;

    private final BitmapLruCache mCache;

    public PlacesAdapter(Context context, List<Place> items) {

        mItems = items;

        mContext = context;

        mLayoutInflater = LayoutInflater.from(mContext);

        mCache = PhotupApplication.getApplication(context).getImageCache();

    }

    public int getCount() {

        return null != mItems ? mItems.size() : 0;

    }

    public long getItemId(int position) {

        return position;

    }

    public Place getItem(int position) {

        return mItems.get(position);

    }

    public View getView(int position, View view, ViewGroup parent) {

        if (null == view) {

            view = mLayoutInflater.inflate(R.layout.item_list_places, parent, false);

        }

        final Place place = getItem(position);

        NetworkedCacheableImageView imageView = (NetworkedCacheableImageView) view

                .findViewById(R.id.iv_photo);

        imageView.loadImage(mCache, place.getAvatarUrl());

        TextView mTitle = (TextView) view.findViewById(R.id.tv_place_name);

        mTitle.setText(place.getName());

        StringBuffer sb = new StringBuffer();

        final int distance = place.getDistanceFromLocation();

        if (distance > 0) {

            sb.append(Utils.formatDistance(distance));

            sb.append(” – “);

        }

        sb.append(place.getCategory());

        TextView mDescription = (TextView) view.findViewById(R.id.tv_place_description);

        mDescription.setText(sb);

        return view;

    }

}

2

package uk.co.senab.photup.adapters;

import android.content.Context;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

import android.widget.BaseAdapter;

import java.util.List;

import uk.co.senab.photup.PhotoUploadController;

import uk.co.senab.photup.PhotupApplication;

import uk.co.senab.photup.R;

import uk.co.senab.photup.model.PhotoUpload;

import uk.co.senab.photup.views.PhotoItemLayout;

import uk.co.senab.photup.views.PhotupImageView;

public class SelectedPhotosBaseAdapter extends BaseAdapter {

    private List<PhotoUpload> mItems;

    private final Context mContext;

    private final LayoutInflater mLayoutInflater;

    private final PhotoUploadController mController;

    private final boolean mShowCheckbox;

    public SelectedPhotosBaseAdapter(Context context, boolean showCheckbox) {

        mContext = context;

        mLayoutInflater = LayoutInflater.from(mContext);

        mShowCheckbox = showCheckbox;

        PhotupApplication app = PhotupApplication.getApplication(context);

        mController = app.getPhotoUploadController();

        mItems = mController.getSelected();

    }

    public int getCount() {

        return null != mItems ? mItems.size() : 0;

    }

    public long getItemId(int position) {

        return position;

    }

    public PhotoUpload getItem(int position) {

        return mItems.get(position);

    }

    public View getView(int position, View view, ViewGroup parent) {

        if (null == view) {

            view = mLayoutInflater.inflate(R.layout.item_grid_photo_selected, parent, false);

        }

        PhotoItemLayout layout = (PhotoItemLayout) view;

        PhotupImageView iv = layout.getImageView();

        final PhotoUpload upload = getItem(position);

        iv.requestThumbnail(upload, true);

        layout.setShowCaption(true);

        layout.setAnimateWhenChecked(false);

        layout.setPhotoSelection(upload);

        layout.setShowCheckbox(mShowCheckbox);

        // If we’re showing the checkbox, then check the background too

        if (mShowCheckbox) {

            layout.setChecked(true);

        }

        return view;

    }

    @Override

    public void notifyDataSetChanged() {

        mItems = mController.getSelected();

        super.notifyDataSetChanged();

    }

}

3

package uk.co.senab.photup.adapters;

import android.content.Context;

import android.support.v4.view.PagerAdapter;

import android.support.v4.view.ViewPager;

import android.view.View;

import java.util.List;

import uk.co.senab.photup.PhotoUploadController;

import uk.co.senab.photup.PhotupApplication;

import uk.co.senab.photup.listeners.OnPickFriendRequestListener;

import uk.co.senab.photup.listeners.OnSingleTapListener;

import uk.co.senab.photup.model.PhotoUpload;

import uk.co.senab.photup.views.MultiTouchImageView;

import uk.co.senab.photup.views.PhotoTagItemLayout;

public class SelectedPhotosViewPagerAdapter extends PagerAdapter {

    private final Context mContext;

    private final PhotoUploadController mController;

    private final OnSingleTapListener mTapListener;

    private final OnPickFriendRequestListener mFriendPickRequestListener;

    private List<PhotoUpload> mItems;

    public SelectedPhotosViewPagerAdapter(Context context, OnSingleTapListener tapListener,

            OnPickFriendRequestListener friendRequestListener) {

        mContext = context;

        mTapListener = tapListener;

        mFriendPickRequestListener = friendRequestListener;

        PhotupApplication app = PhotupApplication.getApplication(context);

        mController = app.getPhotoUploadController();

        refreshData();

    }

    @Override

    public void destroyItem(View container, int position, Object object) {

        PhotoTagItemLayout view = (PhotoTagItemLayout) object;

        MultiTouchImageView imageView = view.getImageView();

        imageView.cancelRequest();

        ((ViewPager) container).removeView(view);

    }

    @Override

    public int getCount() {

        return null != mItems ? mItems.size() : 0;

    }

    public int getItemPosition(Object object) {

        return POSITION_NONE;

    }

    public PhotoUpload getItem(int position) {

        if (position >= 0 && position < getCount()) {

            return mItems.get(position);

        }

        return null;

    }

    @Override

    public Object instantiateItem(View container, int position) {

        PhotoUpload upload = mItems.get(position);

        PhotoTagItemLayout view = new PhotoTagItemLayout(mContext, mController, upload,

                mFriendPickRequestListener);

        view.setPosition(position);

        upload.setFaceDetectionListener(view);

        MultiTouchImageView imageView = view.getImageView();

        imageView.requestFullSize(upload, true, null);

        imageView.setSingleTapListener(mTapListener);

        ((ViewPager) container).addView(view);

        return view;

    }

    @Override

    public boolean isViewFromObject(View view, Object object) {

        return view == ((View) object);

    }

    @Override

    public void notifyDataSetChanged() {

        refreshData();

        super.notifyDataSetChanged();

    }

    protected Context getContext() {

        return mContext;

    }

    private void refreshData() {

        mItems = mController.getSelected();

    }

}

4

package uk.co.senab.photup.adapters;

import android.content.Context;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

import android.widget.BaseAdapter;

import java.util.List;

import uk.co.senab.photup.PhotoUploadController;

import uk.co.senab.photup.PhotupApplication;

import uk.co.senab.photup.R;

import uk.co.senab.photup.model.PhotoUpload;

import uk.co.senab.photup.views.UploadItemLayout;

public class UploadsListBaseAdapter extends BaseAdapter {

    private List<PhotoUpload> mItems;

    private final Context mContext;

    private final LayoutInflater mLayoutInflater;

    private final PhotoUploadController mController;

    public UploadsListBaseAdapter(Context context) {

        mContext = context;

        mLayoutInflater = LayoutInflater.from(mContext);

        PhotupApplication app = PhotupApplication.getApplication(context);

        mController = app.getPhotoUploadController();

        mItems = mController.getUploadingUploads();

    }

    public int getCount() {

        return null != mItems ? mItems.size() : 0;

    }

    public long getItemId(int position) {

        return position;

    }

    public PhotoUpload getItem(int position) {

        return mItems.get(position);

    }

    public View getView(int position, View view, ViewGroup parent) {

        if (null == view) {

            view = mLayoutInflater.inflate(R.layout.item_list_upload, parent, false);

        }

        UploadItemLayout layout = (UploadItemLayout) view;

        layout.setPhotoSelection(getItem(position));

        return view;

    }

    @Override

    public void notifyDataSetChanged() {

        mItems = mController.getUploadingUploads();

        super.notifyDataSetChanged();

    }

}

 

点点赞赏,手留余香 给TA打赏

AI创作

试 化 简 逻 辑 式:
试 化 简 逻 辑 式:
3分钟前 有人购买 去瞅瞅看
资料三中,原有的评价模式是否恰当地反映了企业的业绩?对企业业绩的评价存在哪些问题? (12分)
资料三中,原有的评价模式是否恰当地反映了企业的业绩?对企业业绩的评价存在哪些问题? (12分)
4分钟前 有人购买 去瞅瞅看
危机领导的主要内容有哪些?
危机领导的主要内容有哪些?
2分钟前 有人购买 去瞅瞅看
支持多种货币
支持多种货币付款,满足您的付款需求
7天无忧退换
安心无忧购物,售后有保障
专业客服服务
百名资深客服7*24h在线服务
发货超时赔付
交易成功极速发货,专业水准保证时效性

站点公告

答案整门打包购买,价格优惠,有需要加微信
显示验证码

社交账号快速登录