mirror of
				https://github.com/commons-app/apps-android-commons.git
				synced 2025-10-31 14:53:59 +01:00 
			
		
		
		
	Add cilck listener to adapter to show Media Detail Screen
This commit is contained in:
		
							parent
							
								
									1059ec4dff
								
							
						
					
					
						commit
						8c95ab868a
					
				
					 2 changed files with 62 additions and 2 deletions
				
			
		|  | @ -1,14 +1,18 @@ | |||
| package fr.free.nrw.commons.featured; | ||||
| 
 | ||||
| import android.database.DataSetObserver; | ||||
| import android.graphics.Bitmap; | ||||
| import android.graphics.BitmapFactory; | ||||
| import android.os.Bundle; | ||||
| import android.support.v4.app.FragmentManager; | ||||
| import android.view.View; | ||||
| import android.widget.AdapterView; | ||||
| import android.widget.GridView; | ||||
| 
 | ||||
| import java.util.ArrayList; | ||||
| 
 | ||||
| import butterknife.ButterKnife; | ||||
| import fr.free.nrw.commons.Media; | ||||
| import fr.free.nrw.commons.R; | ||||
| import fr.free.nrw.commons.auth.AuthenticatedActivity; | ||||
| import fr.free.nrw.commons.media.MediaDetailPagerFragment; | ||||
|  | @ -19,7 +23,9 @@ import fr.free.nrw.commons.media.MediaDetailPagerFragment; | |||
| 
 | ||||
| public class FeaturedImagesActivity | ||||
|         extends AuthenticatedActivity | ||||
|         implements FragmentManager.OnBackStackChangedListener { | ||||
|         implements FragmentManager.OnBackStackChangedListener, | ||||
|                     MediaDetailPagerFragment.MediaDetailProvider, | ||||
|                     AdapterView.OnItemClickListener{ | ||||
| 
 | ||||
|     private FeaturedImagesListFragment featuredImagesListFragment; | ||||
|     private MediaDetailPagerFragment mediaDetails; | ||||
|  | @ -61,4 +67,52 @@ public class FeaturedImagesActivity | |||
|     public void onBackStackChanged() { | ||||
| 
 | ||||
|     } | ||||
| 
 | ||||
|     @Override | ||||
|     public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { | ||||
|         if (mediaDetails == null || !mediaDetails.isVisible()) { | ||||
|             mediaDetails = new MediaDetailPagerFragment(); | ||||
|             FragmentManager supportFragmentManager = getSupportFragmentManager(); | ||||
|             supportFragmentManager | ||||
|                     .beginTransaction() | ||||
|                     .replace(R.id.featuredFragmentContainer, mediaDetails) | ||||
|                     .addToBackStack(null) | ||||
|                     .commit(); | ||||
|             supportFragmentManager.executePendingTransactions(); | ||||
|         } | ||||
|         mediaDetails.showImage(i); | ||||
|     } | ||||
| 
 | ||||
|     @Override | ||||
|     public Media getMediaAtPosition(int i) { | ||||
|         if (featuredImagesListFragment.getAdapter() == null) { | ||||
|             // not yet ready to return data | ||||
|             return null; | ||||
|         } else { | ||||
|             return ((FeaturedImage)featuredImagesListFragment.getAdapter().getItem(i)).getImage(); | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     @Override | ||||
|     public int getTotalMediaCount() { | ||||
|         if (featuredImagesListFragment.getAdapter() == null) { | ||||
|             return 0; | ||||
|         } | ||||
|         return featuredImagesListFragment.getAdapter().getCount(); | ||||
|     } | ||||
| 
 | ||||
|     @Override | ||||
|     public void notifyDatasetChanged() { | ||||
| 
 | ||||
|     } | ||||
| 
 | ||||
|     @Override | ||||
|     public void registerDataSetObserver(DataSetObserver observer) { | ||||
| 
 | ||||
|     } | ||||
| 
 | ||||
|     @Override | ||||
|     public void unregisterDataSetObserver(DataSetObserver observer) { | ||||
| 
 | ||||
|     } | ||||
| } | ||||
|  |  | |||
|  | @ -9,6 +9,7 @@ import android.view.View; | |||
| import android.view.ViewGroup; | ||||
| import android.widget.AdapterView; | ||||
| import android.widget.GridView; | ||||
| import android.widget.ListAdapter; | ||||
| 
 | ||||
| import java.util.ArrayList; | ||||
| 
 | ||||
|  | @ -40,7 +41,8 @@ public class FeaturedImagesListFragment extends DaggerFragment { | |||
|     public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { | ||||
|         super.onViewCreated(view, savedInstanceState); | ||||
| 
 | ||||
|         gridView = (GridView) getView().findViewById(R.id.featuredImagesList); | ||||
|         gridView = getView().findViewById(R.id.featuredImagesList); | ||||
|         gridView.setOnItemClickListener((AdapterView.OnItemClickListener) getActivity()); | ||||
|         gridAdapter = new MockGridViewAdapter(this.getContext(), R.layout.layout_featured_images, getMockFeaturedImages()); | ||||
|         gridView.setAdapter(gridAdapter); | ||||
| 
 | ||||
|  | @ -54,4 +56,8 @@ public class FeaturedImagesListFragment extends DaggerFragment { | |||
|         } | ||||
|         return featuredImages; | ||||
|     } | ||||
| 
 | ||||
|     public ListAdapter getAdapter() { | ||||
|         return gridView.getAdapter(); | ||||
|     } | ||||
| } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 neslihanturan
						neslihanturan