diff --git a/MemeProject/.idea/misc.xml b/MemeProject/.idea/misc.xml index d415385..99b2e43 100644 --- a/MemeProject/.idea/misc.xml +++ b/MemeProject/.idea/misc.xml @@ -3,27 +3,14 @@ - - - - - - - - - - - + - - - - 1.7 + 1.8 diff --git a/MemeProject/.idea/vcs.xml b/MemeProject/.idea/vcs.xml index def6a6a..21cbaa6 100644 --- a/MemeProject/.idea/vcs.xml +++ b/MemeProject/.idea/vcs.xml @@ -1,7 +1,7 @@ - + diff --git a/MemeProject/MemeProject.iml b/MemeProject/MemeProject.iml index 29deca7..2a02201 100644 --- a/MemeProject/MemeProject.iml +++ b/MemeProject/MemeProject.iml @@ -1,5 +1,5 @@ - + @@ -7,7 +7,9 @@ - + + + diff --git a/MemeProject/app/app.iml b/MemeProject/app/app.iml index eb0313a..0a44384 100644 --- a/MemeProject/app/app.iml +++ b/MemeProject/app/app.iml @@ -1,5 +1,5 @@ - + @@ -9,7 +9,6 @@ - @@ -25,7 +24,6 @@ - @@ -83,11 +81,15 @@ - + - - + + + + + + diff --git a/MemeProject/app/build.gradle b/MemeProject/app/build.gradle index 77da775..2779651 100644 --- a/MemeProject/app/build.gradle +++ b/MemeProject/app/build.gradle @@ -22,4 +22,7 @@ android { dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:22.1.1' + compile 'com.j256.ormlite:ormlite-android:4.48' + compile 'com.jakewharton:butterknife:7.0.1' + compile 'com.squareup.picasso:picasso:2.5.2' } diff --git a/MemeProject/app/src/main/AndroidManifest.xml b/MemeProject/app/src/main/AndroidManifest.xml index 1f734f0..98babc6 100644 --- a/MemeProject/app/src/main/AndroidManifest.xml +++ b/MemeProject/app/src/main/AndroidManifest.xml @@ -20,7 +20,7 @@ @@ -30,7 +30,7 @@ - diff --git a/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/ColorPicker.java b/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/ColorPickerView.java similarity index 97% rename from MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/ColorPicker.java rename to MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/ColorPickerView.java index 60d77f7..72b834d 100644 --- a/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/ColorPicker.java +++ b/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/ColorPickerView.java @@ -27,7 +27,7 @@ import android.view.MotionEvent; import android.view.View; -public class ColorPicker extends View { +public class ColorPickerView extends View { /** @@ -74,17 +74,17 @@ public class ColorPicker extends View { */ private float[] colorHSV = new float[]{0f, 0f, 1f}; - public ColorPicker(Context context, AttributeSet attrs, int defStyle) { + public ColorPickerView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); init(); } - public ColorPicker(Context context, AttributeSet attrs) { + public ColorPickerView(Context context, AttributeSet attrs) { super(context, attrs); init(); } - public ColorPicker(Context context) { + public ColorPickerView(Context context) { super(context); init(); } @@ -307,7 +307,7 @@ public boolean onTouchEvent(MotionEvent event) { invalidate(); } - EditPhoto.getInstance().setTopColor(getColor()); + EditPhotoActivity.getInstance().setTopColor(getColor()); return true; } return super.onTouchEvent(event); diff --git a/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/CustomArrayAdapter.java b/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/CustomArrayAdapter.java deleted file mode 100644 index b462b33..0000000 --- a/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/CustomArrayAdapter.java +++ /dev/null @@ -1,59 +0,0 @@ -package madelyntav.c4q.nyc.memeproject; - -import android.content.Context; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.ArrayAdapter; -import android.widget.ImageView; -import android.widget.TextView; - -import java.util.List; - -/** - * Created by kadeemmaragh on 6/4/15. - */ -public class CustomArrayAdapter extends ArrayAdapter { - - List memeNames= null; - List memeImages = null; - private static LayoutInflater inflater = null; - - CustomArrayAdapter(Context context, List names, List images) { - super(context, R.layout.list_item, names); - memeNames = names; - memeImages = images; - - inflater = (LayoutInflater) context. - getSystemService(Context.LAYOUT_INFLATER_SERVICE); - - } - - @Override - public View getView(int position, View convertView, - ViewGroup parent) { - if (convertView==null) { - convertView=newView(parent); - } - - bindView(position, convertView); - - return(convertView); - } - - private View newView(ViewGroup parent) { - return inflater.inflate(R.layout.list_item, parent, false); - } - - private void bindView(int position, View row) { - TextView label=(TextView)row.findViewById(R.id.memeName); - - label.setText(memeNames.get(position)); - - ImageView icon=(ImageView)row.findViewById(R.id.memeImage); - - icon.setImageResource(memeImages.get(position)); - } - - -} diff --git a/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/DatabaseHelper.java b/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/DatabaseHelper.java new file mode 100644 index 0000000..2e2e45d --- /dev/null +++ b/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/DatabaseHelper.java @@ -0,0 +1,57 @@ +package madelyntav.c4q.nyc.memeproject; + +import android.content.Context; +import android.database.sqlite.SQLiteDatabase; + +import com.j256.ormlite.android.apptools.OrmLiteSqliteOpenHelper; +import com.j256.ormlite.support.ConnectionSource; +import com.j256.ormlite.table.TableUtils; + +import java.sql.SQLException; +import java.util.List; + +public class DatabaseHelper extends OrmLiteSqliteOpenHelper { + + private static final String MYDB = "mydb.db"; + private static final int VERSION = 1; + private static DatabaseHelper mHelper; + + public static synchronized DatabaseHelper getInstance(Context context) { + if (mHelper == null) { + mHelper = new DatabaseHelper(context.getApplicationContext()); + } + return mHelper; + } + + public DatabaseHelper(Context context) { + super(context, MYDB, null, VERSION); + } + + @Override + public void onCreate(SQLiteDatabase database, ConnectionSource connectionSource) { + try { + TableUtils.createTable(connectionSource, MemeTemplate.class); + } catch (SQLException e) { + e.printStackTrace(); + } + } + + @Override + public void onUpgrade(SQLiteDatabase database, ConnectionSource connectionSource, int oldVersion, int newVersion) { + try { + TableUtils.dropTable(connectionSource, MemeTemplate.class, true); + onCreate(database, connectionSource); + } catch (SQLException e) { + e.printStackTrace(); + } + } + + public void insertRow(String title, Integer resource_id) throws SQLException { + MemeTemplate memeTemplate = new MemeTemplate(title, resource_id); + getDao(MemeTemplate.class).create(memeTemplate); + } + + public List loadData() throws SQLException { + return getDao(MemeTemplate.class).queryForAll(); + } +} diff --git a/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/EditPhoto.java b/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/EditPhotoActivity.java similarity index 96% rename from MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/EditPhoto.java rename to MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/EditPhotoActivity.java index 26f459e..9575c22 100644 --- a/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/EditPhoto.java +++ b/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/EditPhotoActivity.java @@ -1,6 +1,5 @@ package madelyntav.c4q.nyc.memeproject; - import android.app.Activity; import android.app.Notification; import android.app.NotificationManager; @@ -9,10 +8,8 @@ import android.content.Intent; import android.graphics.Bitmap; import android.graphics.BitmapFactory; -import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Typeface; -import android.graphics.drawable.Drawable; import android.net.Uri; import android.os.Bundle; import android.os.Environment; @@ -38,9 +35,7 @@ import java.text.SimpleDateFormat; import java.util.Date; - -public class EditPhoto extends Activity implements View.OnTouchListener { - +public class EditPhotoActivity extends Activity implements View.OnTouchListener { private NotificationManager mNotificationManager; private Bitmap returnedBitmap; @@ -50,7 +45,7 @@ public class EditPhoto extends Activity implements View.OnTouchListener { public static ImageView imageView; public static ImageView demoImage; private int color; - private ColorPicker colorPicker; + private ColorPickerView colorPickerView; private Button vanilla; private Button demotivational; private EditText editText, editText2, demoTitle, demoText; @@ -64,21 +59,19 @@ public class EditPhoto extends Activity implements View.OnTouchListener { Button twentyFive; RelativeLayout root; private boolean isVanilla = true; - public static EditPhoto getInstance() { + public static EditPhotoActivity getInstance() { return instance; } - static EditPhoto instance; + static EditPhotoActivity instance; ImageButton share; private Uri uri; - @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_edit_photo); - - colorPicker = (ColorPicker) findViewById(R.id.colorPicker); + colorPickerView = (ColorPickerView) findViewById(R.id.colorPicker); imageView = (ImageView) findViewById(R.id.mImageView); demoImage = (ImageView) findViewById(R.id.demotivationalImage); @@ -108,13 +101,6 @@ protected void onCreate(Bundle savedInstanceState) { editText2.setOnTouchListener(this); - - - - - - - //----------------------------GET IMAGE FROM PREVIOUS INTENT--------------------------// //opens pic in this activity @@ -253,7 +239,7 @@ public void demotivate(View v) { fifteen.setVisibility(View.INVISIBLE); twenty.setVisibility(View.INVISIBLE); twentyFive.setVisibility(View.INVISIBLE); - colorPicker.setVisibility(View.INVISIBLE); + colorPickerView.setVisibility(View.INVISIBLE); linearLayout2.setVisibility(View.GONE); linearLayout3.setVisibility(View.GONE); @@ -474,7 +460,7 @@ public void clearImage(View view) { public void run() { imageView.setImageBitmap(uriBm); demoImage.setImageBitmap(uriBm); - Toast.makeText(EditPhoto.this, "Cleared", Toast.LENGTH_SHORT).show(); + Toast.makeText(EditPhotoActivity.this, "Cleared", Toast.LENGTH_SHORT).show(); } }); @@ -491,7 +477,7 @@ public void run() { imageView.setImageBitmap(engraved); demoImage.setImageBitmap(engraved); - Toast.makeText(EditPhoto.this, "Engraved", Toast.LENGTH_SHORT).show(); + Toast.makeText(EditPhotoActivity.this, "Engraved", Toast.LENGTH_SHORT).show(); } }); @@ -509,7 +495,7 @@ public void run() { imageView.setImageBitmap(inverted); demoImage.setImageBitmap(inverted); - Toast.makeText(EditPhoto.this, "Inverted", Toast.LENGTH_SHORT).show(); + Toast.makeText(EditPhotoActivity.this, "Inverted", Toast.LENGTH_SHORT).show(); } }); @@ -527,7 +513,7 @@ public void run() { imageView.setImageBitmap(greyscaled); demoImage.setImageBitmap(greyscaled); - Toast.makeText(EditPhoto.this, "Greyscale", Toast.LENGTH_SHORT).show(); + Toast.makeText(EditPhotoActivity.this, "Greyscale", Toast.LENGTH_SHORT).show(); } }); @@ -565,7 +551,7 @@ public void shadingFilterGreen(View view) { public void choseColor(View v) { - color = colorPicker.getColor(); + color = colorPickerView.getColor(); linearLayout3.setVisibility(View.GONE); editText.setVisibility(View.VISIBLE); editText2.setVisibility(View.VISIBLE); @@ -589,10 +575,9 @@ public void vanillaM(View v) { fifteen.setVisibility(View.VISIBLE); twenty.setVisibility(View.VISIBLE); twentyFive.setVisibility(View.VISIBLE); - colorPicker.setVisibility(View.VISIBLE); + colorPickerView.setVisibility(View.VISIBLE); memeLayout.setBackgroundColor(Color.parseColor("#CCCCCC")); - } public void setTopColor(int color) { @@ -603,4 +588,4 @@ public void setTopColor(int color) { editText2.setHintTextColor(color); editText2.invalidate(); } -} +} \ No newline at end of file diff --git a/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/MainActivity.java b/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/MainActivity.java index d1ee61a..ba3b8ea 100644 --- a/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/MainActivity.java +++ b/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/MainActivity.java @@ -1,5 +1,4 @@ package madelyntav.c4q.nyc.memeproject; -import android.content.ContentResolver; import android.content.Intent; import android.graphics.Bitmap; import android.net.Uri; @@ -11,7 +10,6 @@ import android.widget.ImageView; import android.widget.Toast; import java.io.ByteArrayOutputStream; -import java.io.IOException; public class MainActivity extends ActionBarActivity { @@ -55,7 +53,7 @@ public void takePic(View v) { } public void chooseMeme(View view){ - Intent popularMemeIntent = new Intent(MainActivity.this, MemeList.class); + Intent popularMemeIntent = new Intent(MainActivity.this, MemeListActivity.class); startActivity(popularMemeIntent); } @@ -63,7 +61,7 @@ public void chooseMeme(View view){ protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); - Intent intent = new Intent(MainActivity.this, EditPhoto.class); + Intent intent = new Intent(MainActivity.this, EditPhotoActivity.class); if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) { diff --git a/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/MemeList.java b/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/MemeList.java deleted file mode 100644 index 4cff6ef..0000000 --- a/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/MemeList.java +++ /dev/null @@ -1,89 +0,0 @@ -package madelyntav.c4q.nyc.memeproject; - -import android.app.Activity; -import android.content.ContentResolver; -import android.content.Intent; -import android.net.Uri; -import android.os.Bundle; -import android.view.View; -import android.widget.AdapterView; -import android.widget.ListView; -import android.widget.Toast; - -import java.io.InputStream; -import java.util.ArrayList; -import java.util.HashMap; - -/** - * Created by kadeemmaragh on 6/5/15. - */ -public class MemeList extends Activity { - - ListView listView; - HashMap memePairs; - private Uri uri; - - @Override - public void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_meme_list); - - listView = (ListView) findViewById(R.id.listView); - - memePairs = new HashMap<>(); - memePairs.put(R.drawable.actual_advice_mallard, "Actual Advice Mallard"); - memePairs.put(R.drawable.but_thats_none_of_my_business, "But That's None Of My Business"); - memePairs.put(R.drawable.creepy_condescending_wonka, "Creepy Condescending Wonka"); - memePairs.put(R.drawable.futurama_fry, "Skeptical Fry"); - memePairs.put(R.drawable.good_guy_greg, "Good Guy Greg"); - memePairs.put(R.drawable.liam_neeson_taken, "Liam Neeson Taken"); - memePairs.put(R.drawable.one_does_not_simply, "One Does Not Simply"); - memePairs.put(R.drawable.scumbag_steve, "Scumbag Steve"); - memePairs.put(R.drawable.shut_up_and_take_my_money_fry, "Shut Up And Take My Money"); - memePairs.put(R.drawable.ten_guy, "Ten Guy"); - memePairs.put(R.drawable.the_most_interesting_man_in_the_world, "The Most Interesting Man In The World"); - memePairs.put(R.drawable.third_world_skeptical_kid, "Third World Skeptical Kid"); - memePairs.put(R.drawable.unhelpful_high_school_teacher, "Unhelpful High School Teacher"); - memePairs.put(R.drawable.yao_ming, "Yao Ming"); - memePairs.put(R.drawable.you_the_real_mvp, "You The Real MVP"); - - - final ArrayList memeImages = new ArrayList(); - ArrayList memeNames = new ArrayList(); - addItemsToArrays(memeImages, memeNames); - - CustomArrayAdapter memeAdapter = new CustomArrayAdapter(getApplicationContext(), memeNames, memeImages); - - listView.setAdapter(memeAdapter); - - listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { - @Override - public void onItemClick(AdapterView> parent, View view, int position, long id) { - Intent intent = new Intent(MemeList.this, EditPhoto.class); - - uri = Uri.parse(ContentResolver.SCHEME_ANDROID_RESOURCE + "://" + getResources().getResourcePackageName(memeImages.get(position)) + '/' + getResources().getResourceTypeName(memeImages.get(position)) + '/' + getResources().getResourceEntryName(memeImages.get(position))); - - intent.putExtra("image", uri); - startActivity(intent); - Toast.makeText(getApplicationContext(), "Please select VANILLA or DEMO layout to begin", Toast.LENGTH_SHORT).show(); - - - } - }); - - - - - } - - public void addItemsToArrays(ArrayList images, ArrayList titles) { - int position = 0; - for (Integer image : memePairs.keySet()) { - - images.add(position, image); - titles.add(position, memePairs.get(image)); - position++; - } - } - -} diff --git a/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/MemeListActivity.java b/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/MemeListActivity.java new file mode 100644 index 0000000..21b21a7 --- /dev/null +++ b/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/MemeListActivity.java @@ -0,0 +1,84 @@ +package madelyntav.c4q.nyc.memeproject; + +import android.app.Activity; +import android.content.ContentResolver; +import android.content.Intent; +import android.net.Uri; +import android.os.AsyncTask; +import android.os.Bundle; +import android.view.View; +import android.widget.AdapterView; +import android.widget.ListView; +import android.widget.Toast; + +import java.sql.SQLException; +import java.util.List; + +public class MemeListActivity extends Activity { + + private ListView mListView; + private Uri mUri; + private DatabaseHelper mHelper; + private MemeTemplateAdapter mAdapter; + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_meme_list); + mListView = (ListView) findViewById(R.id.listView); + + new DatabaseTask().execute(); + + + } + + private class DatabaseTask extends AsyncTask> { + + @Override + protected List doInBackground(Void... voids) { + mHelper = DatabaseHelper.getInstance(getApplicationContext()); + try { + if (mHelper.loadData().size() == 0) { + mHelper.insertRow("Actual Advice Mallard", R.drawable.actual_advice_mallard); + mHelper.insertRow("But That's None Of My Business", R.drawable.but_thats_none_of_my_business); + mHelper.insertRow("Creepy Condescending Wonka", R.drawable.creepy_condescending_wonka); + mHelper.insertRow("Skeptical Fry", R.drawable.futurama_fry); + mHelper.insertRow("Good Guy Greg", R.drawable.good_guy_greg); + mHelper.insertRow("Liam Neeson Taken", R.drawable.liam_neeson_taken); + mHelper.insertRow("One Does Not Simply", R.drawable.one_does_not_simply); + mHelper.insertRow("Scumbag Steve", R.drawable.scumbag_steve); + mHelper.insertRow("Shut Up And Take My Money", R.drawable.shut_up_and_take_my_money_fry); + mHelper.insertRow("Ten Guy", R.drawable.ten_guy); + mHelper.insertRow("The Most Interesting Man In The World", R.drawable.the_most_interesting_man_in_the_world); + mHelper.insertRow("Third World Skeptical Kid", R.drawable.third_world_skeptical_kid); + mHelper.insertRow("Unhelpful High School Teacher", R.drawable.unhelpful_high_school_teacher); + mHelper.insertRow("Yao Ming", R.drawable.yao_ming); + mHelper.insertRow("You The Real MVP", R.drawable.you_the_real_mvp); + } + return mHelper.loadData(); + } catch (SQLException e) { + e.printStackTrace(); + } + + return null; + } + + @Override + protected void onPostExecute(List memeTemplates) { + mAdapter = new MemeTemplateAdapter(MemeListActivity.this, memeTemplates); + mListView.setAdapter(mAdapter); + mListView.setOnItemClickListener(new AdapterView.OnItemClickListener() { + @Override + public void onItemClick(AdapterView> parent, View view, int position, long id) { + Intent intent = new Intent(MemeListActivity.this, EditPhotoActivity.class); + int resourceId = mAdapter.getItem(position).getResource_id(); + mUri = Uri.parse(ContentResolver.SCHEME_ANDROID_RESOURCE + "://" + getResources().getResourcePackageName(resourceId) + '/' + getResources().getResourceTypeName(resourceId) + '/' + getResources().getResourceEntryName(resourceId)); + intent.putExtra("image", mUri); + startActivity(intent); + Toast.makeText(getApplicationContext(), "Please select VANILLA or DEMO layout to begin", Toast.LENGTH_SHORT).show(); + } + }); + } + } + +} \ No newline at end of file diff --git a/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/MemeTemplate.java b/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/MemeTemplate.java new file mode 100644 index 0000000..4ef5fec --- /dev/null +++ b/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/MemeTemplate.java @@ -0,0 +1,67 @@ +package madelyntav.c4q.nyc.memeproject; + +import com.j256.ormlite.field.DataType; +import com.j256.ormlite.field.DatabaseField; +import com.j256.ormlite.table.DatabaseTable; + +@DatabaseTable +public class MemeTemplate { + + @DatabaseField(generatedId = true) + private int id; + + @DatabaseField + private String title; + + @DatabaseField + private Integer resource_id; + + @DatabaseField(dataType = DataType.BYTE_ARRAY) + private byte[] data; + + public MemeTemplate() { + + } + + public MemeTemplate(String title, Integer resource_id) { + this.title = title; + this.resource_id = resource_id; + } + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public Integer getResource_id() { + return resource_id; + } + + public void setResource_id(Integer resource_id) { + this.resource_id = resource_id; + } + + public byte[] getData() { + return data; + } + + public void setData(byte[] data) { + this.data = data; + } + + @Override + public String toString() { + return id + " | " + title + " | " + resource_id; + } +} diff --git a/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/MemeTemplateAdapter.java b/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/MemeTemplateAdapter.java new file mode 100644 index 0000000..4557c2d --- /dev/null +++ b/MemeProject/app/src/main/java/madelyntav/c4q/nyc/memeproject/MemeTemplateAdapter.java @@ -0,0 +1,60 @@ +package madelyntav.c4q.nyc.memeproject; + +import android.content.Context; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.BaseAdapter; +import android.widget.ImageView; +import android.widget.TextView; + +import com.squareup.picasso.Picasso; + +import java.util.List; + +import butterknife.Bind; +import butterknife.ButterKnife; + +public class MemeTemplateAdapter extends BaseAdapter { + + private List mList; + private Context mContext; + private LayoutInflater mInflater; + + @Bind(R.id.memeImage) ImageView mImageView; + @Bind(R.id.memeName) TextView mTextView; + + public MemeTemplateAdapter(Context mContext, List mList) { + this.mContext = mContext; + this.mList = mList; + mInflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); + } + + @Override + public int getCount() { + return mList.size(); + } + + @Override + public MemeTemplate getItem(int position) { + return mList.get(position); + } + + @Override + public long getItemId(int position) { + return 0; + } + + @Override + public View getView(int position, View convertView, ViewGroup parent) { + if (convertView == null) { + convertView = mInflater.inflate(R.layout.list_item_meme_template, parent, false); + } + + ButterKnife.bind(this, convertView); + Picasso.with(mContext).load(getItem(position).getResource_id()).into(mImageView); + mTextView.setText(getItem(position).getTitle()); + + return convertView; + } +} \ No newline at end of file diff --git a/MemeProject/app/src/main/res/layout/activity_edit_photo.xml b/MemeProject/app/src/main/res/layout/activity_edit_photo.xml index 144a91c..5bb0ca4 100644 --- a/MemeProject/app/src/main/res/layout/activity_edit_photo.xml +++ b/MemeProject/app/src/main/res/layout/activity_edit_photo.xml @@ -7,7 +7,7 @@ android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" android:id="@+id/root" - tools:context="madelyntav.c4q.nyc.memeproject.EditPhoto" + tools:context="madelyntav.c4q.nyc.memeproject.EditPhotoActivity" android:background="#CCC"> @@ -202,7 +202,7 @@ android:layout_weight="1" android:textSize="12dp"/> - diff --git a/MemeProject/app/src/main/res/layout/list_item.xml b/MemeProject/app/src/main/res/layout/list_item_meme_template.xml similarity index 100% rename from MemeProject/app/src/main/res/layout/list_item.xml rename to MemeProject/app/src/main/res/layout/list_item_meme_template.xml diff --git a/MemeProject/app/src/main/res/menu/menu_edit_photo.xml b/MemeProject/app/src/main/res/menu/menu_edit_photo.xml index b8e0ef1..cb85bd4 100644 --- a/MemeProject/app/src/main/res/menu/menu_edit_photo.xml +++ b/MemeProject/app/src/main/res/menu/menu_edit_photo.xml @@ -1,7 +1,7 @@ + tools:context="madelyntav.c4q.nyc.memeproject.EditPhotoActivity"> diff --git a/MemeProject/app/src/main/res/menu/menu_meme_list2.xml b/MemeProject/app/src/main/res/menu/menu_meme_list2.xml index 3a46850..080dfa7 100644 --- a/MemeProject/app/src/main/res/menu/menu_meme_list2.xml +++ b/MemeProject/app/src/main/res/menu/menu_meme_list2.xml @@ -1,7 +1,7 @@ + tools:context="madelyntav.c4q.nyc.memeproject.MemeListActivity">