Advertisement
III-sonic

drtailactivity

Jan 12th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.83 KB | None | 0 0
  1. package com.skmobile.cataloguemovieuiux;
  2.  
  3. import android.content.ContentValues;
  4. import android.content.Intent;
  5. import android.database.Cursor;
  6. import android.icu.text.DateFormat;
  7. import android.icu.text.SimpleDateFormat;
  8. import android.net.Uri;
  9. import android.support.v7.app.AppCompatActivity;
  10. import android.os.Bundle;
  11. import android.view.View;
  12. import android.widget.Button;
  13. import android.widget.ImageButton;
  14. import android.widget.ImageView;
  15. import android.widget.TextView;
  16.  
  17. import com.bumptech.glide.Glide;
  18. import com.bumptech.glide.load.resource.drawable.GlideDrawable;
  19. import com.bumptech.glide.request.target.Target;
  20. import com.github.ivbaranov.mfb.MaterialFavoriteButton;
  21. import com.skmobile.cataloguemovieuiux.db.DatabaseContract;
  22. import com.skmobile.cataloguemovieuiux.db.FavoriteHelper;
  23. import com.skmobile.cataloguemovieuiux.entity.Favorite;
  24.  
  25. import java.text.ParseException;
  26. import java.util.ArrayList;
  27. import java.util.Date;
  28.  
  29. import butterknife.BindView;
  30. import butterknife.ButterKnife;
  31.  
  32. import static com.skmobile.cataloguemovieuiux.db.DatabaseContract.FavoriteColumns.DATE;
  33. import static com.skmobile.cataloguemovieuiux.db.DatabaseContract.FavoriteColumns.DESCRIPTION;
  34. import static com.skmobile.cataloguemovieuiux.db.DatabaseContract.FavoriteColumns.IMAGE;
  35. import static com.skmobile.cataloguemovieuiux.db.DatabaseContract.FavoriteColumns.TITLE;
  36.  
  37. public class DetailActivity extends AppCompatActivity {
  38.  
  39. @BindView(R.id.img_item_photo)
  40. ImageView ImgView;
  41. @BindView(R.id.tv_title)
  42. TextView tvTitle;
  43. @BindView(R.id.tv_description)
  44. TextView tvDiskripsi;
  45. @BindView(R.id.tv_date)
  46. TextView tvDate;
  47. private Favorite favorite;
  48. public static int RESULT_ADD = 101;
  49. public static int RESULT_DELETE = 301;
  50. public static String EXTRA_TITLE = "extra_title";
  51. public static String EXTRA_DISCRIPTION = "extra_discription";
  52. public static String EXTRA_DATE = "extra_date";
  53. public static String EXTRA_BACKDOR = "extra_backdor";
  54. public static String EXTRA_POSTERPATH = "extra_posterpath";
  55.  
  56.  
  57. @Override
  58. protected void onCreate(Bundle savedInstanceState) {
  59. super.onCreate(savedInstanceState);
  60. setContentView(R.layout.activity_detail);
  61. ButterKnife.bind(this);
  62.  
  63. final String mTitle = getIntent().getStringExtra(EXTRA_TITLE);
  64. final String mDiskripsi = getIntent().getStringExtra(EXTRA_DISCRIPTION);
  65. final String mTanggal = getIntent().getStringExtra(EXTRA_DATE);
  66. final String mImage = String.valueOf(Glide.with(this).load("http://image.tmdb.org/t/p/w342"+getIntent().getStringExtra(EXTRA_BACKDOR)).into(ImgView));
  67.  
  68.  
  69. final String title = mTitle;
  70. final String diskripsi = mDiskripsi;
  71. final String tanggal = mTanggal;
  72. final String img = mImage;
  73. getSupportActionBar().setTitle(title);
  74.  
  75. tvTitle.setText(title);
  76. tvDiskripsi.setText(diskripsi);
  77. tvDate.setText(tanggal);
  78.  
  79. DateFormat inputFormat = new SimpleDateFormat("yyyy-M-dd");
  80. DateFormat outputFormat = new SimpleDateFormat("EEEE, MMM dd, yyyy");
  81. Date date = null;
  82. try {
  83. date = inputFormat.parse(getIntent().getStringExtra(EXTRA_DATE));
  84. tvDate.setText(outputFormat.format(date));
  85. } catch (ParseException e) {
  86. tvDate.setText(getIntent().getStringExtra(EXTRA_DATE));
  87. }
  88.  
  89. Button btnShare = (Button)findViewById(R.id.btn_share);
  90. btnShare.setOnClickListener(new View.OnClickListener() {
  91. @Override
  92. public void onClick(View v) {
  93. Intent intent=new Intent(android.content.Intent.ACTION_SEND);
  94. intent.setType("text/plain");
  95. intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
  96.  
  97. intent.putExtra(Intent.EXTRA_SUBJECT, "Some Subject");
  98. intent.putExtra(Intent.EXTRA_TEXT, title);
  99. intent.putExtra(Intent.EXTRA_TEXT, img);
  100.  
  101.  
  102. startActivity(Intent.createChooser(intent, "How do you want to share?"));
  103. }
  104. });
  105. FavoriteHelper favoriteHelper = new FavoriteHelper(this);
  106. favoriteHelper.open();
  107.  
  108. Uri uri = getIntent().getData();
  109.  
  110.  
  111. if (uri != null) {
  112. Cursor cursor = getContentResolver().query(uri, null, null, null, null);
  113. if (cursor != null){
  114. if(cursor.moveToFirst()) favorite = new Favorite(cursor);
  115. cursor.close();
  116. }
  117. }
  118. MaterialFavoriteButton materialFavoriteButton = (MaterialFavoriteButton)findViewById(R.id.FavoriteButton);
  119. materialFavoriteButton.setFavorite(false);
  120.  
  121. materialFavoriteButton.setOnFavoriteChangeListener(new MaterialFavoriteButton.OnFavoriteChangeListener() {
  122. @Override
  123. public void onFavoriteChanged(MaterialFavoriteButton buttonView, boolean favorite) {
  124. if (favorite == true){
  125.  
  126.  
  127.  
  128.  
  129. ContentValues values = new ContentValues();
  130. values.put(IMAGE, img);
  131. values.put(TITLE, title);
  132. values.put(DESCRIPTION, diskripsi);
  133. values.put(DATE, tanggal);
  134.  
  135. getContentResolver().insert(DatabaseContract.CONTENT_URI, values);
  136.  
  137.  
  138.  
  139. }else {
  140. getContentResolver().delete(DatabaseContract.CONTENT_URI,null,null);
  141.  
  142. setResult(RESULT_DELETE, null);
  143.  
  144. }
  145. }
  146. });
  147. materialFavoriteButton.setOnFavoriteAnimationEndListener(
  148. new MaterialFavoriteButton.OnFavoriteAnimationEndListener() {
  149. @Override
  150. public void onAnimationEnd(MaterialFavoriteButton buttonView, boolean favorite) {
  151.  
  152. }
  153. });
  154.  
  155.  
  156.  
  157. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement