Skip to content

Latest commit

 

History

History
233 lines (185 loc) · 6.78 KB

README.md

File metadata and controls

233 lines (185 loc) · 6.78 KB

RichEditor for Android

Modifications made by @quipper: available on jitpack IO

 - Add UnorderedList and OrderedList to OnTextSelectionChangeListener 
 - Update the UI: 
     - Move the formatting toolbar so it doesn't blocked by the android text selection pop up
     - Apply Open Sans Regular as the default font
     - Attempt to add rounded box on the richEdit using FrameLayout (check the layout for details)
 - Support clipboard text insertion on paste event
 - Support Android 21 (fix crash when running on android 21)

Modifications made by user @kishannareshpal:

    - Custom default font (jost.ttf) 
        To override it for a font of your own, do as follow:
            a. Create the /assets folder on your app package if you haven't already;
            b. Create a subfolder named "fonts" inside your /assets directory.
            c. Place your custom font .ttf file inside the fonts directory.
            d. Make sure that the font file is named: "refont.ttf"
            e. Enjoy!
        
    - Migrated to AndroidX
    - Upgrade of Android Gradle.
    – Bumped up the minSdkVersion from 14 to 17, due to JavascriptInterfaces method.
    – Implemented a different, more reliable, approach of passing data between WebView and JS. Before: Callback URL Scheme. Now: JavascriptInterfaces
    – Removed OnDecorationStateListener as i found it unnecessary.
    – Added OnTextSelectionChangeListener which contains two params, one is an object that has all of the information about what format type is enabled to the current Caret; And the second param is the actual selected text.
    – Modified OnTextChangeListener, it now returns the html and the text.

Android Arsenal License Download

RichEditor for Android is a beautiful Rich Text WYSIWYG Editor for Android.

Supported Functions

Toolbar

  • Bold
  • Italic
  • Subscript
  • Superscript
  • Strikethrough
  • Underline
  • Justify Left
  • Justify Center
  • Justify Right
  • Blockquote
  • Heading 1
  • Heading 2
  • Heading 3
  • Heading 4
  • Heading 5
  • Heading 6
  • Undo
  • Redo
  • Indent
  • Outdent
  • Insert Image
  • Insert Link
  • Checkbox
  • Text Color
  • Text Background Color
  • Text Font Size
  • Unordered List (Bullets)
  • Ordered List (Numbers)

Attribute change of editor

  • Font Size
  • Background Color
  • Width
  • Height
  • Placeholder
  • Load CSS
  • State Callback

Milestone

  • Font Family

Demo

Demo

Samples

How do I use it?

Setup

Gradle
repositories {
    jcenter()
    // maven { url 'https://jitpack.io' } // uncomment this if you are using kishan's build.
}

dependencies {
    implementation 'jp.wasabeef:richeditor-android:1.2.2'
    
    // or use (for kishan's edit, and upgrades listed on top of this readme file.)
    implementation 'com.github.kishannareshpal:richeditor-android:1.3.2'
    // don't forget to add jitpack repo by uncommenting the line above.  

}

Default Setting for Editor


Height

editor.setEditorHeight(200);

Font

editor.setEditorFontSize(22);
editor.setEditorFontColor(Color.RED);

Background

editor.setEditorBackgroundColor(Color.BLUE);
editor.setBackgroundColor(Color.BLUE);
editor.setBackgroundResource(R.drawable.bg);
editor.setBackground("https://raw.githubusercontent.com/wasabeef/art/master/chip.jpg");

Padding

editor.setPadding(10, 10, 10, 10);

Placeholder

editor.setPlaceholder("Insert text here...");

Others
Please refer the samples for usage.

Functions for ContentEditable


Bold

editor.setBold();

Italic

editor.setItalic();

Insert Image

editor.insertImage("https://raw.githubusercontent.com/wasabeef/art/master/twitter.png","twitter");

Text Change Listener

RichEditor editor = (RichEditor) findViewById(R.id.editor);
editor. setOnTextChangeListener(new RichEditor.OnTextChangeListener() {
  @Override
  public void onTextChange(String text) {
    // Do Something
     Log.d("RichEditor", "Preview " + text);
  }
});

Others
Please refer the samples for usage.

Requirements

Android 4+

Applications using RichEditor for Android

Please ping me or send a pull request if you would like to be added here.

Icon Application
Ameba Ownd
ScorePal

Developed By

Daichi Furiya (Wasabeef) - [email protected]

Follow me on Twitter

Thanks

  • Inspired by ZSSRichTextEditor in nnhubbard.

License

Copyright 2017 Wasabeef

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.