MessageView

Additional

Language
Java
Version
v5.0.19 (Apr 29, 2020)
Created
Mar 17, 2019
Updated
Sep 11, 2023
Owner
Akshay (TutorialsAndroid)
Contributor
Akshay (TutorialsAndroid)
1
Activity
Badge
Generate
Download
Source code

MessageView

Heatic Debate App Download Now

And Don't Forget To Follow Me On Instagram

Follow me on instagram to stay up-to-date https://instagram.com/a.masram444

MessageView helps you to create chat message view or a social media post view quickly like a typical chatting application or social media post view Its a container view, so you can add any type of message or social post such as TextView or any customize TextView, ImageView, etc.

Library name change from Postui to MessageView.We have removed postui api instead of postui you can use message view api read the below docs.

Library Available at Maven Central

Please note jitpack version of this library is not maintained consider using maven central

Latest version of this library is migrated to androidx

Features

  1. Can have any child inside of it.
  2. You can change color of MessageView normal and pressed.
  3. Adjustable arrow position (top, bottom, left, right)
  4. Adjustable arrow gravity (start, end, center)
  5. Message view without arrow

Sample Screen

See the below demo.This demo shows how the Kinda App is using message view library.

Installation with JitPack

( IMPORTANT NOTE: WE HAVE STOPPED PUSHING LIBRARY TO JITPACK v5.0.19 is outdated now. SEE mavenCentral() below )

Add it in your root build.gradle at the end of repositories:

allprojects {
 repositories {
  ...
  maven { url 'https://jitpack.io' }
 }
}

Step 2. Add the dependency

dependencies {
         implementation 'com.github.TutorialsAndroid:MessageView:v5.0.19'
}

Installation with mavenCentral()

Step 1. Directly add the dependency in application build.gradle file:

dependencies {
    implementation 'io.github.tutorialsandroid:messageview:6.0.0'
}    

Use

  1. Include MessageView in your xml of adapter view with content inside.
<com.developer.messageview.MessageView
 xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:backgroundColor="#88BABABA"
    app:backgroundColorPressed="#FFBABABA"
    app:cornerRadius="3dp" >

    <TextView
        android:id="@+id/text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello" />

        <!-- ... -->

</com.developer.messageview.MessageView>

Customization

Attributes:

app:arrowGravity="start|end|center"
app:arrowPosition="right|left|top|bottom"
app:arrowMargin="3dp"
app:contentPadding="10dp"
app:backgroundColor="#88BABABA"
app:backgroundColorPressed="#FFBABABA"
app:cornerRadius="3dp"
app:showArrow="true|false"

Description:

  • arrowGravity controls relative position of arrow. possible values are start,end and center. default is left.
  • arrowPosition controls poition of the arrow outside the box. possible values are right,left,top and bottom. default is left.
  • arrowMargin controls margin of arrow. If arrowPosition is left or right it controls top and bottom margin. else it controls left and right margin.
  • contentPadding adjusts padding of content within the box.
  • backgroundColor sets background color of MessageView in normal mode including arrow.
  • backgroundColorPressed sets background color of MessageView in pressed mode including arrow.
  • cornerRadius sets corner radius of the box.
  • showArrow shows / hides arrow from MessageView.

developed to make programming easy.

by Akshay Sunil Masram (akshaysunilmasram@yahoo.com)

License

Copyright 2019 MessageView

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.