Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Override
- public void onActivityCreated(final Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- String mLeagueId = getArguments().getString(FANTASY_LEAGUE_ID);
- mContext = getActivity().getApplicationContext();
- mLeague = FantasyLeague.find(mContext, mLeagueId);
- mPosition = getArguments().getString(POSITION);
- mFreeAgents = mLeague.free_agents_by_position(mPosition);
- mOriginalFreeAgents = new ArrayList<Player>(mFreeAgents);
- mUserCanDraft = mLeague.isMyTeamOnTheClock(mContext);
- setEmptyText("No free agents available at this position.");
- // Check if Twitter app is on the phone.
- final boolean twitterInstalled = appInstalledOrNot("com.twitter.android");
- if(mFreeAgents!= null) {
- // Sort the free agents by season point projections.
- Collections.sort(mFreeAgents, new Comparator<Player>() {
- @Override
- public int compare(Player player, Player player2) {
- return player.getSeasonProjection().getPoints() > player2.getSeasonProjection().getPoints() ? -1 :
- player.getSeasonProjection().getPoints() < player2.getSeasonProjection().getPoints() ? 1 : 0;
- }
- });
- /**
- * Set the list adapter to handle and display the free agents
- * in this ListFragment.
- */
- mListAdapter = new BaseAdapter() {
- public int getCount() {
- return mFreeAgents.size();
- }
- public Object getItem(int position) {
- return mFreeAgents.get(position);
- }
- public long getItemId(int position) {
- return position;
- }
- // Set the player name in the TextView for each row.
- @Override
- public View getView(int position, View convertView, ViewGroup parent) {
- ViewHolder holder;
- final Player player = mFreeAgents.get(position);
- if (convertView == null) {
- holder = new ViewHolder();
- LayoutInflater inflater = getLayoutInflater(savedInstanceState);
- convertView = inflater.inflate(R.layout.in_draft_player_list_row, null);
- holder.playerName = (TextView) convertView.findViewById(R.id.playerName);
- holder.positionTeamName = (TextView) convertView.findViewById(R.id.positionTeamName);
- holder.projectionLabel = (TextView) convertView.findViewById(R.id.projectionLabel);
- holder.projectionNumber = (TextView) convertView.findViewById(R.id.projectionNumber);
- holder.draftButton = (Button) convertView.findViewById(R.id.draft_button);
- convertView.setTag(holder);
- } else {
- holder = (ViewHolder) convertView.getTag();
- }
- holder.playerName.setText(player.getFirstName() + " " + player.getLastName());
- holder.positionTeamName.setText(player.getPosition() + " - " + player.getTeamName());
- holder.projectionLabel.setText("Proj: ");
- DecimalFormat decimalFormat = new DecimalFormat("0.0");
- holder.projectionNumber.setText(String.valueOf(decimalFormat.format(player.getSeasonProjection().getPoints())));
- // Show the draft button if the user can draft. If not, hide it.
- if (mUserCanDraft) {
- holder.draftButton.setVisibility(View.VISIBLE);
- } else {
- holder.draftButton.setVisibility(View.GONE);
- }
- // Handle a Draft button click.
- holder.draftButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(final View view) {
- /**
- * Show the Twitter share toggle, if it is installed on the user's phone.
- */
- if(twitterInstalled) {
- View draftDialogView = View.inflate(view.getContext(), R.layout.toggle_draft_pick_share, null);
- final Switch toggleButton = (Switch) draftDialogView.findViewById(R.id.ToggleButton);
- /**
- * Set the last-picked share action from the user, if they have previously
- * chosen not to share. Otherwise, it defaults to enabled.
- */
- if (SharedPreferencesHelper.getData(view.getContext(), Constants.TWITTER_TOGGLE_KEY, null) != null) {
- if (SharedPreferencesHelper.getData(view.getContext(), Constants.TWITTER_TOGGLE_KEY, null).equals("false")) {
- toggleButton.setChecked(false);
- }
- }
- new CustomAlertDialog(getActivity())
- .setTitle("Draft")
- .setTitleColor(getResources().getString(R.color.apptheme))
- .setMessage("Are you sure you want to draft " + player.getFirstName() + " " + player.getLastName() + " to your team?")
- .setCustomView(draftDialogView, getActivity())
- .setIcon(R.drawable.social_add_person)
- .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int whichButton) {
- // Save the drafted player for use in the Twitter intent.
- mDraftedPlayer = player;
- // Save the state of the Tweet toggle state to shared preferences.
- if (toggleButton.isChecked()) {
- SharedPreferencesHelper.saveData(view.getContext(), Constants.TWITTER_TOGGLE_KEY, "true");
- } else {
- SharedPreferencesHelper.saveData(view.getContext(), Constants.TWITTER_TOGGLE_KEY, "false");
- }
- // Start the draft player task.
- mDraftPlayerTask = new DraftPlayerTask();
- mDraftPlayerTask.execute(player);
- }
- })
- .setNegativeButton(android.R.string.cancel, null).show();
- } else {
- // Show the draft dialog without the share option.
- new CustomAlertDialog(getActivity())
- .setTitle("Draft")
- .setTitleColor(getResources().getString(R.color.apptheme))
- .setMessage("Are you sure you want to draft " + player.getFirstName() + " " + player.getLastName() + " to your team?")
- .setIcon(R.drawable.social_add_person)
- .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int whichButton) {
- mDraftPlayerTask = new DraftPlayerTask();
- mDraftPlayerTask.execute(player);
- mDraftedPlayer = player;
- }
- })
- .setNegativeButton(android.R.string.cancel, null).show();
- }
- }
- });
- // Set the background selector.
- // setBackground() is only available in API 16 and up!
- if (Build.VERSION.SDK_INT >= 16) {
- convertView.setBackground(convertView.getContext().getResources().getDrawable(R.drawable.cell_selector));
- } else {
- convertView.setBackgroundDrawable(convertView.getContext().getResources().getDrawable(R.drawable.cell_selector));
- }
- return convertView;
- }
- class ViewHolder {
- TextView playerName;
- TextView positionTeamName;
- TextView projectionLabel;
- TextView projectionNumber;
- Button draftButton;
- }
- };
- setListAdapter(mListAdapter);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement