diff --git a/BetterTextViewSample/app/build.gradle b/BetterTextViewSample/app/build.gradle index 3b0d24a..749bd33 100644 --- a/BetterTextViewSample/app/build.gradle +++ b/BetterTextViewSample/app/build.gradle @@ -20,11 +20,12 @@ android { } dependencies { - compile fileTree(dir: 'libs', include: ['*.jar']) + compile fileTree(include: ['*.jar'], dir: 'libs') compile 'com.android.support:appcompat-v7:23.4.0' compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha2' testCompile 'junit:junit:4.12' androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.2' androidTestCompile 'com.android.support.test:runner:0.5' androidTestCompile 'com.android.support:support-annotations:23.4.0' + compile project(':bettertextview') } diff --git a/BetterTextViewSample/bettertextview/src/main/assets/fonts/dancing _script.ttf b/BetterTextViewSample/app/src/main/assets/fonts/dancing_script.ttf similarity index 100% rename from BetterTextViewSample/bettertextview/src/main/assets/fonts/dancing _script.ttf rename to BetterTextViewSample/app/src/main/assets/fonts/dancing_script.ttf diff --git a/BetterTextViewSample/bettertextview/src/main/assets/fonts/dancing_script_license.html b/BetterTextViewSample/app/src/main/assets/fonts/dancing_script_license.html similarity index 100% rename from BetterTextViewSample/bettertextview/src/main/assets/fonts/dancing_script_license.html rename to BetterTextViewSample/app/src/main/assets/fonts/dancing_script_license.html diff --git a/BetterTextViewSample/bettertextview/src/main/assets/fonts/ofl.txt b/BetterTextViewSample/app/src/main/assets/fonts/ofl.txt similarity index 100% rename from BetterTextViewSample/bettertextview/src/main/assets/fonts/ofl.txt rename to BetterTextViewSample/app/src/main/assets/fonts/ofl.txt diff --git a/BetterTextViewSample/app/src/main/java/com/virtualprodigy/bettertextviewsample/MainActivity.java b/BetterTextViewSample/app/src/main/java/com/virtualprodigy/bettertextviewsample/MainActivity.java index 07fc35e..22dc57c 100644 --- a/BetterTextViewSample/app/src/main/java/com/virtualprodigy/bettertextviewsample/MainActivity.java +++ b/BetterTextViewSample/app/src/main/java/com/virtualprodigy/bettertextviewsample/MainActivity.java @@ -1,13 +1,63 @@ package com.virtualprodigy.bettertextviewsample; +import android.content.Context; +import android.graphics.Typeface; +import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.Menu; +import android.view.MenuInflater; +import android.view.MenuItem; +import android.view.View; +import android.webkit.WebView; +import android.widget.TextView; public class MainActivity extends AppCompatActivity { - + Context context; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); + context = this; + + } + + + @Override + public boolean onCreateOptionsMenu(Menu menu) { + MenuInflater inflater = getMenuInflater(); + inflater.inflate(R.menu.menu, menu); + return true; + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + // Handle item selection + switch (item.getItemId()) { + case R.id.font_license: + displayChangeLog(); + return true; + + default: + return super.onOptionsItemSelected(item); + } + } + + /** + * Display the webview with the license for the Dancing font + */ + private void displayChangeLog() { + + WebView webview = new WebView(context); + webview.loadUrl("file:///android_asset/fonts/dancing_script_license.html"); + + AlertDialog dialog = new AlertDialog.Builder(context) + .setTitle("Dancing Script License") + .setView(webview) + .setPositiveButton("ok",null) + .create(); + dialog.show(); + } } diff --git a/BetterTextViewSample/app/src/main/res/layout/activity_main.xml b/BetterTextViewSample/app/src/main/res/layout/activity_main.xml index a120dd9..4a81459 100644 --- a/BetterTextViewSample/app/src/main/res/layout/activity_main.xml +++ b/BetterTextViewSample/app/src/main/res/layout/activity_main.xml @@ -2,17 +2,19 @@ + + + + + + \ No newline at end of file diff --git a/BetterTextViewSample/bettertextview/build.gradle b/BetterTextViewSample/bettertextview/build.gradle index de1cede..5796085 100644 --- a/BetterTextViewSample/bettertextview/build.gradle +++ b/BetterTextViewSample/bettertextview/build.gradle @@ -21,7 +21,7 @@ android { } dependencies { - compile fileTree(dir: 'libs', include: ['*.jar']) + compile fileTree(include: ['*.jar'], dir: 'libs') compile 'com.android.support:appcompat-v7:23.4.0' testCompile 'junit:junit:4.12' androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.2' diff --git a/BetterTextViewSample/bettertextview/src/main/AndroidManifest.xml b/BetterTextViewSample/bettertextview/src/main/AndroidManifest.xml index 4cb9152..816ff8c 100644 --- a/BetterTextViewSample/bettertextview/src/main/AndroidManifest.xml +++ b/BetterTextViewSample/bettertextview/src/main/AndroidManifest.xml @@ -1,9 +1,6 @@ - - - + diff --git a/BetterTextViewSample/bettertextview/src/main/java/com/virtualprodigy/bettertextview/BetterTextView.java b/BetterTextViewSample/bettertextview/src/main/java/com/virtualprodigy/bettertextview/BetterTextView.java index 6939edd..d96cf32 100644 --- a/BetterTextViewSample/bettertextview/src/main/java/com/virtualprodigy/bettertextview/BetterTextView.java +++ b/BetterTextViewSample/bettertextview/src/main/java/com/virtualprodigy/bettertextview/BetterTextView.java @@ -14,6 +14,7 @@ public class BetterTextView extends TextView { private boolean scaleWithinBounds; private String typefaceAsset; private Context context; + private final String FONT_DIRECTORY = "fonts/"; public BetterTextView(Context context) { super(context); @@ -45,7 +46,7 @@ private void init(Context context, AttributeSet attrs) { try { scaleWithinBounds = typedArray.getBoolean(R.styleable.betterTextViewAttrs_typefaceAsset, false); - typefaceAsset = typedArray.getString(R.styleable.betterTextViewAttrs_typefaceAsset); + typefaceAsset = FONT_DIRECTORY + typedArray.getString(R.styleable.betterTextViewAttrs_typefaceAsset); } finally { typedArray.recycle(); } @@ -69,7 +70,7 @@ public void setScaleWithinBounds(boolean scaleWithinBounds) { * @param typefaceAsset - Name of the TTF file */ public void setTypefaceAsset(String typefaceAsset) { - this.typefaceAsset = typefaceAsset; + this.typefaceAsset = FONT_DIRECTORY + typefaceAsset; setTypeface(); } diff --git a/README.md b/README.md index 63d2485..0e37d44 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,33 @@ # BetterTextView -A Custom Android TextView With some upgrades +A custom Android TextView with some upgrades. + +#Description +This small library is a slightly upgraded version of Android's standard TextView. It currently features the ability +to set the Type Face via XML. + + + +#Feature Features +### 1. Automatically sizing the font to fit within a TextView's bound. +### 2. Maven distribution + + +#Change Log +###Version 1.0 + 1. Users can add their typeface view xml + + +#License + Copyright 2016 Matthew Butler + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and +limitations under the License. \ No newline at end of file