Android Open Source - Joetz-Android-V2 Photo Fragment From Project Back to project page Joetz-Android-V2 .
License The source code is released under:
GNU General Public License
If you think the Android project Joetz-Android-V2 listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
Java Source Code package com.example.jens.myapplication.camps;
/ / f r o m w w w . j a v a 2 s . c o m
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AbsListView;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.ProgressBar;
import com.example.jens.myapplication.R;
import com.example.jens.myapplication.domain.Camp;
import com.example.jens.myapplication.sam.JoetzApplication;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.assist.FailReason;
import com.nostra13.universalimageloader.core.listener.ImageLoadingProgressListener;
import com.nostra13.universalimageloader.core.listener.SimpleImageLoadingListener;
public class PhotoFragment extends Fragment {
DisplayImageOptions options;
private Long mCampId;
private Camp mCamp;
protected AbsListView listView;
public PhotoFragment() {
// Required empty public constructor
}
Integer [] imageUrls;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (!JoetzApplication.getContext().getCampManager().isCampsLoaded()){
JoetzApplication.getContext().restartApplication();
}
mCampId = getActivity().getIntent().getExtras().getLong(InfoFragment.ARG_CAMP_ID);
mCamp = JoetzApplication.getContext().getCampManager().findCampById(mCampId);
imageUrls = mCamp.getImages().toArray(new Integer [mCamp.getImages().size()]);
options = new DisplayImageOptions.Builder()
.showImageOnLoading(R.drawable.stub)
.cacheInMemory(true)
.cacheOnDisk(true)
.considerExifParams(true)
.bitmapConfig(Bitmap.Config.RGB_565)
.build();
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View rootView = inflater.inflate(R.layout.fragment_photo, container, false);
listView = (GridView) rootView.findViewById(R.id.grid);
((GridView) listView).setAdapter(new ImageAdapter());
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
startImagePagerActivity(position);
}
});
return rootView;
}
protected void startImagePagerActivity(int position) {
Intent intent = new Intent(getActivity(), ImageActivity.class);
intent.putExtra(ImagePagerFragment.IMAGE_POSITION, position);
int [] newArray = new int [imageUrls.length];
int i = 0;
for (int value : imageUrls) {
newArray[i++] = Integer.valueOf(value);
}
intent.putExtra(ImagePagerFragment.IMAGE_ARRAY, newArray);
// Bundle b = new Bundle();
// ArrayList<Integer> images = new ArrayList(Arrays.asList(imageUrls));
// b.putIntegerArrayList(ImagePagerFragment.IMAGE_ARRAY, images );
// intent.putExtras(b);
startActivity(intent);
}
public class ImageAdapter extends BaseAdapter {
private LayoutInflater inflater;
ImageAdapter() {
inflater = LayoutInflater.from(getActivity());
}
@Override
public int getCount() {
return imageUrls.length;
}
@Override
public Object getItem(int position) {
return null;
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
final ViewHolder holder;
View view = convertView;
if (view == null) {
view = inflater.inflate(R.layout.item_grid_image, parent, false);
holder = new ViewHolder();
assert view != null;
holder.imageView = (ImageView) view.findViewById(R.id.image);
holder.progressBar = (ProgressBar) view.findViewById(R.id.progress);
view.setTag(holder);
} else {
holder = (ViewHolder) view.getTag();
}
ImageLoader.getInstance()
.displayImage("http://joetzdev.azurewebsites.net/api/images/" +imageUrls[position].toString(), holder.imageView, options, new SimpleImageLoadingListener() {
@Override
public void onLoadingStarted(String imageUri, View view) {
holder.progressBar.setProgress(0);
holder.progressBar.setVisibility(View.VISIBLE);
}
@Override
public void onLoadingFailed(String imageUri, View view, FailReason failReason) {
holder.progressBar.setVisibility(View.GONE);
}
@Override
public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) {
holder.progressBar.setVisibility(View.GONE);
}
}, new ImageLoadingProgressListener() {
@Override
public void onProgressUpdate(String imageUri, View view, int current, int total) {
holder.progressBar.setProgress(Math.round(100.0f * current / total));
}
});
return view;
}
}
static class ViewHolder {
ImageView imageView;
ProgressBar progressBar;
}
}
Java Source Code List com.example.jens.myapplication.ApplicationTest.java com.example.jens.myapplication.account.FragmentAccount.java com.example.jens.myapplication.account.LoginDialogActivity.java com.example.jens.myapplication.account.LoginFragment.java com.example.jens.myapplication.account.PersonsFragment.java com.example.jens.myapplication.account.ProfileFragment.java com.example.jens.myapplication.account.RegisterDialogActivity.java com.example.jens.myapplication.account.RegisterFragment.java com.example.jens.myapplication.account.TabsPagerAdapter.java com.example.jens.myapplication.activities.ActivityDetailActivity.java com.example.jens.myapplication.activities.ActivityDetailFragment.java com.example.jens.myapplication.activities.FragmentListActivities.java com.example.jens.myapplication.activities.JoetzActivitiesAdapter.java com.example.jens.myapplication.activities.JoetzActivity.java com.example.jens.myapplication.activities.StartActivity.java com.example.jens.myapplication.apimanager.ApiConnection.java com.example.jens.myapplication.apimanager.CancellableTask.java com.example.jens.myapplication.apimanager.JSONParsingTask.java com.example.jens.myapplication.apimanager.PostRequestTask.java com.example.jens.myapplication.apimanager.RequestParams.java com.example.jens.myapplication.apimanager.SimpleRequestTask.java com.example.jens.myapplication.apimanager.filter.PersonFilter.java com.example.jens.myapplication.apimanager.manager.ActivityManager.java com.example.jens.myapplication.apimanager.manager.AuthToken.java com.example.jens.myapplication.apimanager.manager.BookingManager.java com.example.jens.myapplication.apimanager.manager.CampManager.java com.example.jens.myapplication.apimanager.manager.ImageManager.java com.example.jens.myapplication.apimanager.manager.LoginManager.java com.example.jens.myapplication.apimanager.manager.ProfileManager.java com.example.jens.myapplication.apimanager.manager.RegisterManager.java com.example.jens.myapplication.booking.AddPersonActivity.java com.example.jens.myapplication.booking.BookingActivity.java com.example.jens.myapplication.booking.BookingBondFragment.java com.example.jens.myapplication.booking.BookingContactFragment.java com.example.jens.myapplication.booking.BookingExtraFragment.java com.example.jens.myapplication.booking.BookingParticipantsFragment.java com.example.jens.myapplication.bookingHistory.BookingHistoryDetailActivity.java com.example.jens.myapplication.bookingHistory.BookingHistoryDetailFragment.java com.example.jens.myapplication.bookingHistory.BookingHistoryOverviewFragment.java com.example.jens.myapplication.bookingHistory.BookingsAdapter.java com.example.jens.myapplication.calendar.FragmentCalendar.java com.example.jens.myapplication.calendar.KalenderAdapter.java com.example.jens.myapplication.calendar.KalenderItem.java com.example.jens.myapplication.camps.CampAdapter.java com.example.jens.myapplication.camps.CampDetailActivity.java com.example.jens.myapplication.camps.CampFilterActivity.java com.example.jens.myapplication.camps.FilterFragment.java com.example.jens.myapplication.camps.FragmentListCamps.java com.example.jens.myapplication.camps.ImageActivity.java com.example.jens.myapplication.camps.ImagePagerFragment.java com.example.jens.myapplication.camps.InfoFragment.java com.example.jens.myapplication.camps.PhotoFragment.java com.example.jens.myapplication.camps.RecyclerItemClickListener.java com.example.jens.myapplication.camps.SquareImageView.java com.example.jens.myapplication.camps.TabsPagerAdapter.java com.example.jens.myapplication.domain.BookingStatus.java com.example.jens.myapplication.domain.Booking.java com.example.jens.myapplication.domain.Camp.java com.example.jens.myapplication.domain.PeriodCategory.java com.example.jens.myapplication.domain.Person.java com.example.jens.myapplication.domain.UserRole.java com.example.jens.myapplication.domain.User.java com.example.jens.myapplication.domain.binding.PersonValidatorBinding.java com.example.jens.myapplication.domain.binding.UserValidatorBinding.java com.example.jens.myapplication.domain.binding.ValidatorBinding.java com.example.jens.myapplication.domain.converter.ErrorConverter.java com.example.jens.myapplication.domain.converter.MyStringParser.java com.example.jens.myapplication.domain.converter.UnixDateTimeConverter.java com.example.jens.myapplication.domain.validator.PersonValidator.java com.example.jens.myapplication.domain.validator.UserValidator.java com.example.jens.myapplication.domain.validator.Validator.java com.example.jens.myapplication.home.AanbevolenAdapter.java com.example.jens.myapplication.home.HomeFragment.java com.example.jens.myapplication.home.ImageSlideAdapter.java com.example.jens.myapplication.home.Reclame.java com.example.jens.myapplication.lib.RangeSeekBar.java com.example.jens.myapplication.main.MainActivity.java com.example.jens.myapplication.main.NavDrawerAdapter.java com.example.jens.myapplication.main.NavDrawerItem.java com.example.jens.myapplication.main.NavMenuItem.java com.example.jens.myapplication.main.NavMenuSection.java com.example.jens.myapplication.sam.JoetzApplication.java com.example.jens.myapplication.sam.MyFragment.java com.example.jens.myapplication.sam.MySaveableFragment.java com.example.jens.myapplication.util.AESEncryption.java com.example.jens.myapplication.util.ActivityUtils.java com.example.jens.myapplication.util.BindingUtils.java com.example.jens.myapplication.util.DateTimeStringConverter.java com.example.jens.myapplication.util.JsonUtils.java com.example.jens.myapplication.util.MyMonths.java com.example.jens.myapplication.util.StringUtils.java com.example.jens.myapplication.view.MyLinearLayout.java