From 50fa08f73b59ba8ed5c63d421dfcd3133e2ad3f8 Mon Sep 17 00:00:00 2001 From: RosmaryFC Date: Fri, 12 Jun 2015 17:54:57 -0400 Subject: [PATCH 1/7] refactored code in add_text --- .../c4q/nyc/meme_project/MainActivity.java | 11 ++-- .../meme5/c4q/nyc/meme_project/add_text.java | 65 ++++++++----------- app/src/main/res/layout/activity_add_text.xml | 2 +- 3 files changed, 35 insertions(+), 43 deletions(-) diff --git a/app/src/main/java/meme5/c4q/nyc/meme_project/MainActivity.java b/app/src/main/java/meme5/c4q/nyc/meme_project/MainActivity.java index 75eafdf..b8a9a4c 100644 --- a/app/src/main/java/meme5/c4q/nyc/meme_project/MainActivity.java +++ b/app/src/main/java/meme5/c4q/nyc/meme_project/MainActivity.java @@ -1,17 +1,17 @@ package meme5.c4q.nyc.meme_project; import android.app.Activity; -import android.graphics.Typeface; -import android.os.Bundle; -import android.widget.TextView; import android.content.Intent; import android.database.Cursor; import android.net.Uri; -import android.provider.MediaStore; import android.os.Bundle; -import android.widget.Toast; +import android.provider.MediaStore; import android.view.View; +import android.widget.Toast; + +//user chooses whether to take picture from gallery, or camera for meme +//todo: create option where user can choose a meme type image. public class MainActivity extends Activity { private static final int RESULT_LOAD_IMG = 1; private static final int REQUEST_IMAGE_CAPTURE = 1; @@ -23,6 +23,7 @@ protected void onCreate(Bundle savedInstanceState) { setContentView(R.layout.activity_main); } + private void launchChooseMeme(){ Intent chooseMeme = new Intent(this,ChooseMemeStyle.class); chooseMeme.putExtra("imgFilePath",imgFilePath); diff --git a/app/src/main/java/meme5/c4q/nyc/meme_project/add_text.java b/app/src/main/java/meme5/c4q/nyc/meme_project/add_text.java index cffe1fc..fc8146b 100644 --- a/app/src/main/java/meme5/c4q/nyc/meme_project/add_text.java +++ b/app/src/main/java/meme5/c4q/nyc/meme_project/add_text.java @@ -3,17 +3,15 @@ import android.content.Intent; import android.graphics.Bitmap; import android.graphics.BitmapFactory; -import android.media.Image; import android.net.Uri; +import android.os.Bundle; import android.os.Environment; +import android.provider.MediaStore; import android.support.v7.app.ActionBarActivity; -import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; -import android.widget.EditText; import android.widget.ImageView; -import android.provider.MediaStore; import android.widget.Toast; import java.io.ByteArrayOutputStream; @@ -22,22 +20,27 @@ import java.io.FileOutputStream; import java.io.IOException; - +//activity allows user to save or share meme created public class add_text extends ActionBarActivity { Bitmap memeImage; - ImageView share; - ImageView save; - ImageView preview; - Bitmap previewMeme; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_add_text); + getMeme(); + ImageView previewMeme = (ImageView) findViewById(R.id.previewMeme); + if(memeImage != null) { + previewMeme.setImageBitmap(memeImage); + } + + } + + public void getMeme () { String filename = getIntent().getStringExtra("memeImage"); try { FileInputStream is = this.openFileInput(filename); @@ -46,36 +49,24 @@ protected void onCreate(Bundle savedInstanceState) { } catch (Exception e) { e.printStackTrace(); } + } - ImageView previewMeme = (ImageView) findViewById(R.id.previewMeme); - if(memeImage != null) { - previewMeme.setImageBitmap(memeImage); - } - - share = (ImageView) findViewById(R.id.shareButton); - share.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - - Intent share = new Intent(Intent.ACTION_SEND); - share.setType("image/jpeg"); - ByteArrayOutputStream bytes = new ByteArrayOutputStream(); - memeImage.compress(Bitmap.CompressFormat.JPEG, 100, bytes); - File f = new File(Environment.getExternalStorageDirectory() + File.separator + "temporary_file.jpg"); - try { - f.createNewFile(); - FileOutputStream fo = new FileOutputStream(f); - fo.write(bytes.toByteArray()); - } catch (IOException e) { - e.printStackTrace(); - } - share.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///sdcard/temporary_file.jpg")); - startActivity(Intent.createChooser(share, "Share Image")); - - - } - }); + public void shareImage(View view) { + Intent share = new Intent(Intent.ACTION_SEND); + share.setType("image/jpeg"); + ByteArrayOutputStream bytes = new ByteArrayOutputStream(); + memeImage.compress(Bitmap.CompressFormat.JPEG, 100, bytes); + File f = new File(Environment.getExternalStorageDirectory() + File.separator + "temporary_file.jpg"); + try { + f.createNewFile(); + FileOutputStream fo = new FileOutputStream(f); + fo.write(bytes.toByteArray()); + } catch (IOException e) { + e.printStackTrace(); + } + share.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///sdcard/temporary_file.jpg")); + startActivity(Intent.createChooser(share, "Share Image")); } public void saveImage(View view) { diff --git a/app/src/main/res/layout/activity_add_text.xml b/app/src/main/res/layout/activity_add_text.xml index 4b9ea6b..cf7a906 100644 --- a/app/src/main/res/layout/activity_add_text.xml +++ b/app/src/main/res/layout/activity_add_text.xml @@ -72,7 +72,6 @@ android:layout_width="300dp" android:layout_height="300dp" android:layout_gravity="center" - /> Date: Fri, 12 Jun 2015 18:56:29 -0400 Subject: [PATCH 2/7] refactored code in demotivational --- .../DemotivationalMemeActivity.java | 25 ++++++++++--------- .../res/layout-land/activity_add_text.xml | 14 +++-------- .../layout/activity_demotivational_meme.xml | 1 + 3 files changed, 17 insertions(+), 23 deletions(-) diff --git a/app/src/main/java/meme5/c4q/nyc/meme_project/DemotivationalMemeActivity.java b/app/src/main/java/meme5/c4q/nyc/meme_project/DemotivationalMemeActivity.java index 0f8ad99..10bc290 100644 --- a/app/src/main/java/meme5/c4q/nyc/meme_project/DemotivationalMemeActivity.java +++ b/app/src/main/java/meme5/c4q/nyc/meme_project/DemotivationalMemeActivity.java @@ -11,7 +11,6 @@ import android.graphics.Rect; import android.os.Bundle; import android.view.View; -import android.widget.Button; import android.widget.EditText; import android.widget.ImageView; @@ -36,6 +35,14 @@ protected void onCreate(Bundle savedInstanceState) { preview = (ImageView) findViewById(R.id.preview); + getMeme(); + + largeText = (EditText) findViewById(R.id.large); + smallText = (EditText) findViewById(R.id.small); + + } + + public void getMeme() { String imgFilePath = ""; Bundle bundle = getIntent().getExtras(); if(bundle.getString("imgFilePath") != null) @@ -43,18 +50,12 @@ protected void onCreate(Bundle savedInstanceState) { imgFilePath = bundle.getString("imgFilePath"); decodeFile(imgFilePath); } + } - largeText = (EditText) findViewById(R.id.large); - smallText = (EditText) findViewById(R.id.small); - Button previewText = (Button) findViewById(R.id.previewText); - previewText.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - memeImage = drawTextToBitmap(image.copy(image.getConfig(),true),largeText.getText().toString(),true); - memeImage = drawTextToBitmap(memeImage,smallText.getText().toString(),false); - preview.setImageBitmap(memeImage); - } - }); + public void previewTextOnClick (View view) { + memeImage = drawTextToBitmap(image.copy(image.getConfig(),true),largeText.getText().toString(),true); + memeImage = drawTextToBitmap(memeImage,smallText.getText().toString(),false); + preview.setImageBitmap(memeImage); } public void launchLastActivity(View view){ diff --git a/app/src/main/res/layout-land/activity_add_text.xml b/app/src/main/res/layout-land/activity_add_text.xml index e4be82f..d61c959 100644 --- a/app/src/main/res/layout-land/activity_add_text.xml +++ b/app/src/main/res/layout-land/activity_add_text.xml @@ -75,9 +75,7 @@ android:id="@+id/previewMeme" android:layout_width="300dp" android:layout_height="300dp" - android:layout_gravity="center" - - /> + android:layout_gravity="center"/> - - - + android:src="@drawable/sharestroke"/> + android:layout_marginTop="30dp"/> - diff --git a/app/src/main/res/layout/activity_demotivational_meme.xml b/app/src/main/res/layout/activity_demotivational_meme.xml index 46c2855..61a0442 100644 --- a/app/src/main/res/layout/activity_demotivational_meme.xml +++ b/app/src/main/res/layout/activity_demotivational_meme.xml @@ -50,6 +50,7 @@ android:layout_height="match_parent" android:layout_weight="1" android:text="Preview Text" + android:onClick="previewTextOnClick" android:id="@+id/previewText" android:layout_gravity="center_horizontal" /> From 271a833ce21084ed3d3fe64a8d240b0d36cc17e5 Mon Sep 17 00:00:00 2001 From: RosmaryFC Date: Fri, 12 Jun 2015 20:03:41 -0400 Subject: [PATCH 3/7] refactored code in ChooseMemeStyle --- .../c4q/nyc/meme_project/ChooseMemeStyle.java | 112 +++++++++--------- .../activity_choose_meme_style.xml | 1 + .../res/layout/activity_choose_meme_style.xml | 1 + 3 files changed, 56 insertions(+), 58 deletions(-) diff --git a/app/src/main/java/meme5/c4q/nyc/meme_project/ChooseMemeStyle.java b/app/src/main/java/meme5/c4q/nyc/meme_project/ChooseMemeStyle.java index e89f9ae..b2faa78 100644 --- a/app/src/main/java/meme5/c4q/nyc/meme_project/ChooseMemeStyle.java +++ b/app/src/main/java/meme5/c4q/nyc/meme_project/ChooseMemeStyle.java @@ -8,28 +8,16 @@ import android.graphics.drawable.AnimationDrawable; import android.os.Bundle; import android.util.Log; -import android.view.Menu; -import android.view.MenuItem; import android.view.View; -import android.widget.Button; import android.widget.ImageView; -import android.widget.RadioButton; import android.widget.RadioGroup; import android.widget.TextView; -import android.widget.Toast; - -import java.util.Random; public class ChooseMemeStyle extends Activity { - public static final String TAG = "MEME_ACTIVITY"; - protected RadioGroup styleGroup; - protected RadioButton styleButton; - protected Button nextButton; protected boolean vanilla; - protected Random slideShow; ImageView img, thumbnail; AnimationDrawable frameAnimation; String imgFilePath; @@ -40,6 +28,17 @@ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_choose_meme_style); + getMeme(); + + applyCustomFont(); + + RadioGroup group = (RadioGroup) findViewById(R.id.styleGroup); + group.setOnCheckedChangeListener(radioGroupChangeListener); + group.check(R.id.chooseDemotivational); + + } + + public void getMeme() { Bundle bundle = getIntent().getExtras(); if(bundle.getString("imgFilePath") != null) { @@ -48,7 +47,9 @@ protected void onCreate(Bundle savedInstanceState) { thumbnail = (ImageView) findViewById(R.id.thumbnail); Bitmap bmp2 = BitmapFactory.decodeFile(imgFilePath); thumbnail.setImageBitmap(bmp2); + } + public void applyCustomFont(){ //apply fonts - //TODO: need to find a way to add this font globally through style! TextView step1 = (TextView) findViewById(R.id.step1); @@ -65,64 +66,59 @@ protected void onCreate(Bundle savedInstanceState) { title.setTypeface(tf); vanillaRadio.setTypeface(tf); demotivationalRadio.setTypeface(tf); + } - RadioGroup group = (RadioGroup) findViewById(R.id.styleGroup); - group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { - @Override - public void onCheckedChanged(RadioGroup radioGroup, int checkedId) { - Log.d(TAG, "onCheckedChanged()"); - // Is the button now checked? + public RadioGroup.OnCheckedChangeListener radioGroupChangeListener = new RadioGroup.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(RadioGroup radioGroup, int checkedId) { + Log.d(TAG, "onCheckedChanged()"); + // Is the button now checked? // boolean checked = ((RadioButton) view).isChecked(); - // Check which radio button was clicked - switch (checkedId) { - case R.id.chooseVanilla: + // Check which radio button was clicked + switch (checkedId) { + case R.id.chooseVanilla: - Log.d(TAG, "onCheckedChanged() -- chooseVanilla"); - //determine if user chose vanilla or demotivational + Log.d(TAG, "onCheckedChanged() -- chooseVanilla"); + //determine if user chose vanilla or demotivational - vanilla = true; - img = (ImageView) findViewById(R.id.sampleImageHolder); - img.setImageResource(R.drawable.vanilla_animation); + vanilla = true; + img = (ImageView) findViewById(R.id.sampleImageHolder); + img.setImageResource(R.drawable.vanilla_animation); - frameAnimation = (AnimationDrawable) img.getDrawable(); + frameAnimation = (AnimationDrawable) img.getDrawable(); - frameAnimation.start(); - break; - case R.id.chooseDemotivational: + frameAnimation.start(); + break; + case R.id.chooseDemotivational: - Log.d(TAG, "onCheckedChanged() -- chooseDemotivational"); - //determine if user chose vanilla or demotivational - vanilla = false; - img = (ImageView) findViewById(R.id.sampleImageHolder); - img.setImageResource(R.drawable.demotivational_animation); + Log.d(TAG, "onCheckedChanged() -- chooseDemotivational"); + //determine if user chose vanilla or demotivational + vanilla = false; + img = (ImageView) findViewById(R.id.sampleImageHolder); + img.setImageResource(R.drawable.demotivational_animation); - frameAnimation = (AnimationDrawable) img.getDrawable(); + frameAnimation = (AnimationDrawable) img.getDrawable(); - frameAnimation.start(); - break; - } + frameAnimation.start(); + break; } - }); - - group.check(R.id.chooseDemotivational); + } + }; - nextButton = (Button) findViewById(R.id.nextButton); - nextButton.setOnClickListener(new View.OnClickListener() { - public void onClick(View v) { - - if (vanilla) { - Intent vanillameme = new Intent(ChooseMemeStyle.this,VanillaMeme.class); - vanillameme.putExtra("imgFilePath",imgFilePath); - startActivity(vanillameme); - } - else { - Intent demotivationalMeme = new Intent(ChooseMemeStyle.this, DemotivationalMemeActivity.class); - demotivationalMeme.putExtra("imgFilePath",imgFilePath); - startActivity(demotivationalMeme); - } - } - }); + public void nextButtonOnClick (View view) { + if (vanilla) { + Intent vanillameme = new Intent(ChooseMemeStyle.this,VanillaMeme.class); + vanillameme.putExtra("imgFilePath",imgFilePath); + startActivity(vanillameme); + } + else { + Intent demotivationalMeme = new Intent(ChooseMemeStyle.this, DemotivationalMemeActivity.class); + demotivationalMeme.putExtra("imgFilePath",imgFilePath); + startActivity(demotivationalMeme); + } } + + } diff --git a/app/src/main/res/layout-land/activity_choose_meme_style.xml b/app/src/main/res/layout-land/activity_choose_meme_style.xml index 5cd25d3..a0511f0 100644 --- a/app/src/main/res/layout-land/activity_choose_meme_style.xml +++ b/app/src/main/res/layout-land/activity_choose_meme_style.xml @@ -124,6 +124,7 @@