Skip to content

Instantly share code, notes, and snippets.

@hi-manshu
Created June 8, 2017 06:56
Show Gist options
  • Save hi-manshu/9d07f0cfa4b91fdde9be36820a47900c to your computer and use it in GitHub Desktop.
Save hi-manshu/9d07f0cfa4b91fdde9be36820a47900c to your computer and use it in GitHub Desktop.
public void selectSpinner() {
if (rotationAnimator != null) {
rotationAnimator.cancel();
}
final ArrayList<Integer> spinnerList = new ArrayList<>();
spinnerList.add(R.drawable.spinner);
spinnerList.add(R.drawable.spinner_blue);
spinnerList.add(R.drawable.spinner_blue_1);
spinnerList.add(R.drawable.spinner_blue_2);
spinnerList.add(R.drawable.spinner_red_1);
// spinnerList.add(R.drawable.spinner_red_2);
spinnerList.add(R.drawable.spinner_red_4);
spinnerList.add(R.drawable.spinner_red_5);
spinnerList.add(R.drawable.spinner_gold);
spinnerList.add(R.drawable.spinner_green);
final Dialog dialog = new Dialog(context);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.select_spinner_dialog);
dialog.setCancelable(true);
dialog.show();
final GridView gridView = (GridView) dialog.findViewById(R.id.spinnerGrid);
gridView.setAdapter(new SpinnerGridAdapter(context, spinnerList));
gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
setImage(spinnerList.get(position),true);
btnSelect.setImageResource(spinnerList.get(position));
dialog.dismiss();
}
});
}
}
public class SpinnerGridAdapter extends BaseAdapter {
Context context;
ArrayList<Integer> spinnerIds;
public SpinnerGridAdapter(Context context, ArrayList<Integer> spinnerIds) {
this.context = context;
this.spinnerIds = spinnerIds;
}
@Override
public int getCount() {
return spinnerIds.size();
}
@Override
public Object getItem(int position) {
return spinnerIds.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = LayoutInflater.from(context).inflate(R.layout.spinner_item, parent, false);
ImageView imageView = (ImageView) v.findViewById(R.id.fidgetSpinner);
imageView.setImageResource(spinnerIds.get(position));
return v;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment