diff options
author | Florina Muntenescu <florinam@google.com> | 2018-01-26 03:07:42 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2018-01-26 03:07:42 +0000 |
commit | 04b54e65c7824db0e2a4e65f0d2d1e2e37eef628 (patch) | |
tree | 4b2d57ccfdfe29b9ccc44a5284a7dbdb56582ff1 /ui | |
parent | ead4e772a1f8d0d3b38355ecc4df4f3d13c654e6 (diff) | |
parent | 3994e948319cd9ac1cf16e64ba99c9f22ed5f5ab (diff) | |
download | android-04b54e65c7824db0e2a4e65f0d2d1e2e37eef628.tar.gz |
Merge "Preparing text styling sample for release" into oc-mr1-dev
Diffstat (limited to 'ui')
-rw-r--r-- | ui/text/.google/packaging.yaml | 45 | ||||
-rw-r--r-- | ui/text/README.md | 73 | ||||
-rw-r--r-- | ui/text/screenshots/icon-web.png | bin | 0 -> 72560 bytes | |||
-rw-r--r-- | ui/text/screenshots/main_activity.png | bin | 0 -> 97795 bytes |
4 files changed, 118 insertions, 0 deletions
diff --git a/ui/text/.google/packaging.yaml b/ui/text/.google/packaging.yaml new file mode 100644 index 00000000..11e27f46 --- /dev/null +++ b/ui/text/.google/packaging.yaml @@ -0,0 +1,45 @@ +# GOOGLE SAMPLE PACKAGING DATA +# +# This file is used by Google as part of our samples packaging process. +# End users may safely ignore this file. It has no relevance to other systems. +--- +# Values: {DRAFT | PUBLISHED | INTERNAL | DEPRECATED | SUPERCEDED} +status: PUBLISHED + +# Optional, put additional explanation here for DEPRECATED or SUPERCEDED. +# statusNote: + +# See http://go/sample-categories +technologies: [Android] +categories: [Getting Started, UI, Text] +languages: [Java] +solutions: [Mobile] + +# May be omitted if unpublished +github: google/android-text + +# Values: BEGINNER | INTERMEDIATE | ADVANCED | EXPERT +level: BEGINNER + +# Dimensions: 512x512, PNG fomrat +icon: screenshots/icon_web.png + +# List of APIs that this sample should be listed under. Use authoritive, +# names that are unique for the product in question. Examples: +# +# Android - android:<class-name> +# App Engine - gae-java:<class name> +# gae-python:<package> +# Web Services - ws:<name of API from Cloud Console> +apiRefs: + - android:android.text.SpannableStringBuilder + - android:android.text.Spanned + - android:android.text.SpannedString + - android:android.text.style.StyleSpan + - android:android.text.style.RelativeSizeSpan + - android:android.text.style.MetricAffectingSpan + + +# Default: apache2. May be omitted for most samples. +# Alternatives: apache2-android (for AOSP) +license: apache2 diff --git a/ui/text/README.md b/ui/text/README.md new file mode 100644 index 00000000..003caf78 --- /dev/null +++ b/ui/text/README.md @@ -0,0 +1,73 @@ +Text Styling +============ +This sample shows how to style text on Android using spans. + +Introduction +------------ +## Features +Parse some hardcoded text and do the following: +* Paragraphs starting with “> ” are transformed into quotes. +* Text enclosed in “```” will be transformed into inline code block. +* Lines starting with “+ ” or “* ” will be transformed into bullet points. +To update the text, modify the value of `R.string.display_text`. +This project is not meant to fully cover the markdown capabilities and has several limitations; for example, quotes do not support nesting other elements. + +## Implementation +The text is parsed in the `Parser.parse` method and the spans are created in the `MarkdownBuilder.markdownToSpans` method. +To see how to apply a span, check out `MarkdownBuilder.buildCodeBlockSpan`. To see how to apply multiple spans on the same string, see `MarkdownBuilder.buildQuoteSpan”. For examples of creating custom spans, see `BulletPointSpan`, `CodeBlockSpan` or `FontSpan`. + +## Testing +Parsing of the text is tested with JUnit tests in `ParserTest`. Span building is tested via Android JUnit tests, in `MarkdownBuilderTest`. + + +Getting Started +--------------- + +Clone this repository, enter the top level directory and run `./gradlew tasks` +to get an overview of all the tasks available for this project. + +Some important tasks are: + +``` +assembleDebug - Assembles all Debug builds. +installDebug - Installs the Debug build. +connectedAndroidTest - Installs and runs the tests for Debug build on connected +devices. +test - Run all unit tests. +``` + +Screenshots +----------- +<img src="screenshots/main_activity.png" width="30%" /> + +Support +------- +- Stack Overflow: http://stackoverflow.com/questions/tagged/android-text + +If you've found an error in this sample, please file an issue: +https://github.com/googlesamples/android-text/issues + +Patches are encouraged, and may be submitted by forking this project and +submitting a pull request through GitHub. + +License +-------- +``` +Copyright 2018 The Android Open Source Project + +Licensed to the Apache Software Foundation (ASF) under one or more contributor +license agreements. See the NOTICE file distributed with this work for +additional information regarding copyright ownership. The ASF licenses this +file to you 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. +``` + diff --git a/ui/text/screenshots/icon-web.png b/ui/text/screenshots/icon-web.png Binary files differnew file mode 100644 index 00000000..47f96e4a --- /dev/null +++ b/ui/text/screenshots/icon-web.png diff --git a/ui/text/screenshots/main_activity.png b/ui/text/screenshots/main_activity.png Binary files differnew file mode 100644 index 00000000..366b19fb --- /dev/null +++ b/ui/text/screenshots/main_activity.png |