Android library to create chat message view easily

Min SDK   15
Latest Commit   2017-10-25 08:40:03
License   Apache-2.0

Github   https://github.com/himanshu-soni/ChatMessageView

         

使用APP客户端扫描二维码运行Demo


...

himanshu-soni

Indore, India

http://himanshusoni.me

         

类似的还有....
ShakeDetector This library provides a easy way to detect a shake movement using the build-in accelerometer and fire a callback on the UI thread every times it happens.
android-slidingactivity Android library which allows you to swipe down from an activity to close it.
MagicaSakura MagicaSakura 是 Android 多主题框架。~ is an Android multi theme library which supporting both daily colorful theme and night theme.
README

README.md

Android Gems

ChatMessageView

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

Features

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

Sample Screen

ChatMessageView

Installation

add gradle dependency to your dependency list:

dependencies {
	compile 'me.himanshusoni.chatmessageview:chat-message-view:1.0.7'
}

Use

  1. Include ChatMessageView in your xml of adapter view with content inside.
<me.himanshusoni.chatmessageview.ChatMessageView
	xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cmv_backgroundColor="#88BABABA"
    app:cmv_backgroundColorPressed="#FFBABABA"
    app:cmv_cornerRadius="3dp" >

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

        <!-- ... -->

</me.himanshusoni.chatmessageview.ChatMessageView>

Customization

Attributes:

app:cmv_arrowGravity="start|end|center"
app:cmv_arrowPosition="right|left|top|bottom"
app:cmv_arrowMargin="3dp"
app:cmv_contentPadding="10dp"
app:cmv_backgroundColor="#88BABABA"
app:cmv_backgroundColorPressed="#FFBABABA"
app:cmv_cornerRadius="3dp"
app:cmv_showArrow="true|false"

Description:

  • cmv_arrowGravity controls relative position of arrow. possible values are start,end and center. default is left.
  • cmv_arrowPosition controls poition of the arrow outside the box. possible values are right,left,top and bottom. default is left.
  • cmv_arrowMargin controls margin of arrow. If cmv_arrowPosition is left or right it controls top and bottom margin. else it controls left and right margin.
  • cmv_contentPadding adjusts padding of content within the box.
  • cmv_backgroundColor sets background color of ChatMessageView in normal mode including arrow.
  • cmv_backgroundColorPressed sets background color of ChatMessageView in pressed mode including arrow.
  • cmv_cornerRadius sets corner radius of the box.
  • cmv_showArrow shows / hides arrow from ChatMessageView.

developed to make programming easy.

by Himanshu Soni (himanshusoni.me@gmail.com)