Socially is a textView which is able to create separate clickable views according to your requirements.

Overview

Socially

Socially is a textView which is able to create separate clickable views according to your requirements.

Sample Video

Simple Usage

">
<com.enofeb.socially.view.SocialTextView
        android:id="@+id/socialTextView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="I am #Spider @Enes99 +905512026461 [email protected] https://www.facebook.com/"
        app:hashTagColor="@color/colorGreen"
        app:mailColor="@color/colorOrange"
        app:mentionColor="@color/colorBlue"
        app:phoneNumberColor="@color/colorOrange"
        app:webLinkColor="@color/colorRed" />
socialTextView.addRules(
          Rule.Hashtag,
          Rule.Mention
          Rule.PhoneNumber,
          Rule.Mail,
          Rule.WebLink,
          Rule.Custom(
               "Date",
               "^(0?[1-9]|[12][0-9]|3[01])-(0?[1-9]|1[012])-([12][0-9]{3})$",
               this.getColor(R.color.colorRed)
         )
)

Features

  • It already supports hashtag, mention, phone number, mail and weblinks. To enable them , you need to add rule which you want to use.
socialTextView.addRules(
         Rule.Mention,
         Rule.PhoneNumber
)
  • It is possible to add Custom regex rule with text color.
socialTextView.addRules(
        Rule.Custom(
            "Date",
            "^(0?[1-9]|[12][0-9]|3[01])-(0?[1-9]|1[012])-([12][0-9]{3})$",
            this.getColor(R.color.colorRed)
        )
)
  • Listen when the user click any text.
socialTextView.onTextClickListener = { word, rule ->
            when (rule) {
                is Rule.Hashtag -> {

                }
                is Rule.Mention -> {

                }
                is Rule.Custom -> {

                }
            }
}

XML Attributes

">
<attr name="hashTagColor" format="color" />
<attr name="mentionColor" format="color" />
<attr name="phoneNumberColor" format="color" />
<attr name="mailColor" format="color" />
<attr name="webLinkColor" format="color" />

Download

  • Add Jitpack to your root build.gradle repositories.
allprojects {
    repositories {
        maven { url 'https://jitpack.io' }
    }
}
  • Add Socially to your module dependencies.
dependencies {
    implementation 'com.github.enofeb:Socially:1.0.7'
}

License

MIT License

Copyright (c) 2021 Enes Zor

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
You might also like...
NFC NDEF Reader and Writer. there are two separate activities for reading and writing.

kotlin-nfc-sample NFC NDEF Reader and Writer. there are two separate activities for reading and writing. Steps Clone the Project Open with Android Stu

Make squids be able to fly.

Xander's Fabric Template for Kotlin The best Fabric template using kotlin. Usage Mod Development: Please read the Fabric Wiki for general mod developm

Medich is an application that raises the problem of satisfaction related to BPJS, especially in the lower classes, with Medich being able to solve all these problems
Medich is an application that raises the problem of satisfaction related to BPJS, especially in the lower classes, with Medich being able to solve all these problems

Medich is an application that raises the problem of satisfaction related to BPJS, especially in the lower classes, with Medich being able to solve all these problems. Medich has a Donation feature that will be very useful for the Community

A simple and flexible Checked TextView or Checkable TextView
A simple and flexible Checked TextView or Checkable TextView

CheckableTextView Checkable TextView [KOTLIN] ⚡ A simple and flexible Checked TextView or Checkable TextView written in Kotlin ⚡ What's New Animation

SquircleView is a library which provides you with Squircle views to use for buttons, views, etc.
SquircleView is a library which provides you with Squircle views to use for buttons, views, etc.

SquircleView SquircleView is a library which provides you with Squircle views to use for buttons, views, etc. Screenshots Different kinds of buttons,

SquircleView is a library which provides you with Squircle views to use for buttons, views, etc.
SquircleView is a library which provides you with Squircle views to use for buttons, views, etc.

SquircleView is a library which provides you with Squircle views to use for buttons, views, etc.

AirQualityVisualizer is a demo application which is used to display demo for websocket continuous connection andhelps the user to visualize air quality according to city in a graphical format with charts, it is developed using Android Jetpack libraries and MVVM.
An unofficial migration requirements checking tool for University of Tsukuba - School of Comprehension Studies faculty.

scs-migration-checker (English) An unofficial migration requirements checking tool for University of Tsukuba - School of Comprehension Studies faculty

Removes account requirements and telemetry from Oculus Quest devices
Removes account requirements and telemetry from Oculus Quest devices

Oculess Features (Temporarily/Partially) Remove Oculus / FaceBook account (only use for disabling updates and telemetry) (Fully) Log Out OF Oculus / F

Removes account requirements and telemetry from Oculus Quest devices
Removes account requirements and telemetry from Oculus Quest devices

Removes account requirements and telemetry from Oculus Quest devices

💳 A quick and easy flip view through which you can create views with two sides like credit cards, poker cards etc.
💳 A quick and easy flip view through which you can create views with two sides like credit cards, poker cards etc.

The article on how this library was created is now published. You can read it on this link here. →. 💳 EasyFlipView Built with ❤︎ by Wajahat Karim and

💳 A quick and easy flip view through which you can create views with two sides like credit cards, poker cards etc.
💳 A quick and easy flip view through which you can create views with two sides like credit cards, poker cards etc.

The article on how this library was created is now published. You can read it on this link here. →. 💳 EasyFlipView Built with ❤︎ by Wajahat Karim and

A custom recycler view with shimmer views to indicate that views are loading.
A custom recycler view with shimmer views to indicate that views are loading.

ShimmerRecyclerView Intro A custom recycler view with shimmer views to indicate that views are loading. The recycler view has a built-in adapter to co

This library provides advance views for lists and stacks. Some of the views are build on top of RecyclerView and others are written in their own. Annotations are compiled by annotation processor to generate bind classes. DOCS -->
This library provides advance views for lists and stacks. Some of the views are build on top of RecyclerView and others are written in their own. Annotations are compiled by annotation processor to generate bind classes. DOCS --

PlaceHolderView An advance view for lists and stacks Some Implementations Documentation You can find the PlaceHolderView documentation here which has

BottomNavigationView  Designed according Google guideLine
BottomNavigationView Designed according Google guideLine

Material Bottom Navigation DEPRECATED Use offical Bottom Navigation BottomNavigationView Designed according Google [guideLine][1] [1]: https://www.goo

Horoscope API for android to get the horoscope according to the sunsign
Horoscope API for android to get the horoscope according to the sunsign

Horoscope-API. Simple Java API to get the horoscope according to the sunsign. Contents Features Implementation API Usage To-dos Credits License Featur

This app reminds people to take medicine according to their respective schedule.

Medicine Reminder App Reminds people for medicine. Objective In this busy and competitive world, it is very difficult for a person to remember each an

HideDroid is an Android app that allows the per-app anonymization of collected personal data according to a privacy level chosen by the user.
HideDroid is an Android app that allows the per-app anonymization of collected personal data according to a privacy level chosen by the user.

HideDroid An Android App for preserving user privacy HideDroid is an Android app that allows the per-app anonymization of collected personal data acco

Flux is a dynamic weather that communicates the weather throughout a landscape whose details vary according to the time and the weather at that particular time.
Flux is a dynamic weather that communicates the weather throughout a landscape whose details vary according to the time and the weather at that particular time.

Flux 📜 Description Flux is a dynamic weather that communicates the weather throughout a landscape whose details vary according to the time and the we

Releases(1.0.9)
Owner
Enes Zor
Coding and visualizing mobile application is best pleasure
Enes Zor
[] Action bar implementation which uses the native action bar on Android 4.0+ and a custom implementation on pre-4.0 through a single API and theme.

DEPRECATED ActionBarSherlock is deprecated. No more development will be taking place. For an up-to-date action bar backport use AppCompat. Thanks for

Jake Wharton 7.1k Dec 24, 2022
Mentions-TextView - Make Mentions and hashtags clickable in Textview

Mentions Textview Custome Textview with Mentions and hashtags being clickable. D

null 2 Jan 9, 2022
PhpStorm Plugin to create clickable links to github repository

composer-links Template ToDo list Create a new IntelliJ Platform Plugin Template project. Get known with the template documentation. Verify the plugin

Nick Escobedo 0 Nov 3, 2021
Sometimes, we need to show a label above an ImageView or any other views. Well, LabelView will be able to help you. It's easy to implement as well!

LabelView Sometimes, we need to show a label above an ImageView or any other views. Well, LabelXXView will be able to help you. It's easy to implement

Jingwei 1.9k Dec 6, 2022
Ranger is custom view which able to act like android seekbar.

Ranger is custom view which able to act like android seekbar.

Enes Zor 3 Oct 17, 2021
Muhammad Bilal 0 Jan 6, 2022
Alert Dialog - You can use this extension instead of creating a separate Alert Dialog for each Activity or Fragment.

We show a warning message (Alert Dialog) to the user in many parts of our applications. You can use this extension instead of creating a separate Alert Dialog for each Activity or Fragment. Thanks to this extension, you can create a Dialog and call it in the Activity or Fragment you want and customize the component you want.

Gökmen Bayram 0 Jan 9, 2022
🧶 Full-fledged Kotlin client for MikaBot/cluster-operator as a separate package

?? Eri Full-fledged Kotlin client for MikaBot/cluster-operator as a separate package Usage Connecting to operator fun main(args: Array<String>) {

Nino 3 Nov 17, 2021