Exemple #1
0
  @Override
  public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();

    //noinspection SimplifiableIfStatement
    if (id == R.id.action_favorite) {
      Log.d(DEBUG_TAG, "Favorite toggled");
      if (FavoritesManager.isFavorite(ResultActivity.this, ResultActivity.symbol)) {
        FavoritesManager.removeFavorite(ResultActivity.this, ResultActivity.symbol);
      } else {
        FavoritesManager.addFavorite(ResultActivity.this, ResultActivity.symbol);
        // Toast at 1:23
        Toast.makeText(
                ResultActivity.this, "Bookmarked " + ResultActivity.name + "!!", Toast.LENGTH_SHORT)
            .show();
      }
      setFavoriteIcon();
      return true;
    } else if (id == R.id.action_facebook) {
      Log.d(DEBUG_TAG, "Facebook share button clicked");
      // Toast at 1:27
      Toast.makeText(
              ResultActivity.this, "Sharing " + ResultActivity.name + "!!", Toast.LENGTH_SHORT)
          .show();
      shareDialog = new ShareDialog(this);
      shareDialog.registerCallback(callbackManager, shareCallback);
      if (ShareDialog.canShow(ShareLinkContent.class)) {
        ShareLinkContent linkContent =
            new ShareLinkContent.Builder()
                .setContentTitle(
                    "Current Stock Price of "
                        + ResultActivity.name
                        + " is $"
                        + ResultActivity.lastPrice)
                .setContentDescription(
                    "Stock Information of "
                        + ResultActivity.name
                        + " ("
                        + ResultActivity.symbol
                        + ")")
                .setImageUrl(
                    Uri.parse(
                        "https://chart.yahoo.com/t?s="
                            + ResultActivity.symbol
                            + "&lang=en-US&width=400&height=300"))
                .setContentUrl(Uri.parse("https://finance.yahoo.com/q?s=" + symbol))
                .build();
        shareDialog.setShouldFailOnDataError(true);
        shareDialog.show(linkContent, ShareDialog.Mode.FEED);
      }
      return true;
    }

    return super.onOptionsItemSelected(item);
  }
Exemple #2
0
 private void setFavoriteIcon() {
   Log.d(DEBUG_TAG, "Setting favorite menu icon");
   if (FavoritesManager.isFavorite(ResultActivity.this, ResultActivity.symbol)) {
     menu.getItem(0).setIcon(getResources().getDrawable(android.R.drawable.star_on, getTheme()));
   } else {
     menu.getItem(0).setIcon(getResources().getDrawable(android.R.drawable.star_off, getTheme()));
   }
 }