package akilliyazilim.justhoy.fragments; import android.annotation.SuppressLint; import android.content.Intent; import android.content.res.Resources; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.view.animation.DecelerateInterpolator; import android.widget.AdapterView; import android.widget.GridView; import com.actionbarsherlock.app.SherlockFragment; import com.melnykov.fab.FloatingActionButton; import java.util.ArrayList; import akilliyazilim.justhoy.R; import akilliyazilim.justhoy.activity.MessagingActivity; import akilliyazilim.justhoy.adapters.ShuffleGridAdapter; import akilliyazilim.justhoy.model.PersonModel; import akilliyazilim.justhoy.tasks.GetHoycularTask; import fr.castorflex.android.smoothprogressbar.SmoothProgressBar; import fr.castorflex.android.smoothprogressbar.SmoothProgressDrawable; /** * Created by mertsimsek on 14.08.2014. */ @SuppressLint("ValidFragment") public class ShuffleFragment extends SherlockFragment implements AdapterView.OnItemClickListener,View.OnClickListener{ GridView grid; SmoothProgressBar progress; int[] colors ; ShuffleGridAdapter adapter; String user_id; public ShuffleFragment(String user_id) { this.user_id = user_id; } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View v = inflater.inflate(R.layout.layout_shuffle,container,false); Resources resources = getResources(); colors = new int[]{resources.getColor(R.color.color_purple), resources.getColor(R.color.color_purple), resources.getColor(R.color.color_purple)}; grid = (GridView) v.findViewById(R.id.grid); FloatingActionButton floatingActionButton = (FloatingActionButton) v.findViewById(R.id.button_floating_action); floatingActionButton.setShadow(true); floatingActionButton.attachToListView(grid); floatingActionButton.setOnClickListener(this); grid.setOnItemClickListener(this); progress = (SmoothProgressBar) v.findViewById(R.id.progress); progress.setIndeterminateDrawable(new SmoothProgressDrawable.Builder(getActivity()) .interpolator(new DecelerateInterpolator()) .colors(colors) .sectionsCount(2) .strokeWidth(8f) //You should use Resources#getDimension .speed(1.5f) //2 times faster .progressiveStartSpeed(2) .progressiveStopSpeed(3.4f) .reversed(true) .mirrorMode(true) .progressiveStart(true) .build()); progress.setVisibility(View.INVISIBLE); return v; } @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); executeShufflePeople(); } @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { Intent i = new Intent(getActivity(), MessagingActivity.class); PersonModel stranger = (PersonModel)parent.getAdapter().getItem(position); i.putExtra("stranger_name",stranger.getName()); i.putExtra("stranger_image_url",stranger.getImage_url()); i.putExtra("stranger_id",stranger.getUser_id()); i.putExtra("message_unread","read"); startActivity(i); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.button_floating_action: executeShufflePeople(); break; } } public void executeShufflePeople() { GetHoycularTask get_hoycular_task = new GetHoycularTask(user_id) { @Override protected void onPreExecute() { super.onPreExecute(); progress.setVisibility(View.VISIBLE); } @Override protected void onPostExecute(ArrayList<PersonModel> personModels) { super.onPostExecute(personModels); adapter = new ShuffleGridAdapter(getActivity().getApplicationContext(),personModels); grid.setAdapter(adapter); progress.setVisibility(View.INVISIBLE); } }; get_hoycular_task.execute(); } }