ChipLayout is an opensource Android library. ChipLayout is an layout which create chips from the text you type and also allow you to show drop down(like MultiautocompleteTextView)
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencies {
implementation 'com.github.AmaldevTA:ChipLayout:1.1.0'
}
OR
Module dependency -
Download folder 'AndroidChipLayout' and add as module dependency
Source code with examples is included in repository.
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:custom="http://schemas.android.com/apk/res-auto"android:layout_width="match_parent"android:layout_height="match_parent"android:background="#FFF"android:padding="10dp"android:orientation="vertical">
<com.libaml.android.view.chip.ChipLayout
android:id="@+id/chipText"android:layout_width="match_parent"android:layout_height="wrap_content"custom:textSize_="10dp"custom:chipPadding_="4dp"custom:chipTextPadding_="2dp"custom:textColor_="@android:color/black"custom:deleteIcon_="@android:drawable/presence_offline"custom:chipDrawable_="@drawable/round_corner_drawable"custom:chipLayoutDrawable_="@drawable/edittext_theme_landing_page"custom:labelPosition_="left">
</com.libaml.android.view.chip.ChipLayout>
</LinearLayout>
====== Find the View in your Activity or Fragment class.
ChipLayoutchip = (ChipLayout) findViewById(R.id.chipText);
String[] countries = {"india","australia","austria","indonesia","canada"};
ArrayAdapter<String> adapter = newArrayAdapter<String>(this,android.R.layout.simple_list_item_1,countries);
chip.setAdapter(adapter);
chip.setOnClickListener(ClickListener);
chip.setOnItemClickListener(ItemClickListener);
chip.addLayoutTextChangedListener(TextChangedListener);
chip.setOnFocusChangeListener(FocusChangeListener);XML attributes
textSize_ format= dimension chipPadding_ format= dimension chipPaddingLeft_ format= dimension chipPaddingRight_ format= dimension chipPaddingTop_ format= dimension chipPaddingBottom_ format= dimension chipTextPadding_ format= dimension chipTextPaddingLeft_ format= dimension chipTextPaddingRight_ format= dimension chipTextPaddingTop_ format= dimension chipTextPaddingBottom_ format= dimension textColor_ format= color hintColor_ format= color
chipColor_ format= color
showText_ format= boolean showDeleteButton_ format= boolean deleteIcon_ format= reference chipDrawable_ format= reference chipLayoutDrawable_ format= reference labelPosition_ format= (left/right)
hint_ format= string
threshold_ format= integer
Public Fields
staticintMAX_CHARACTER_COUNTPublic Methods
publicvoidsetOnClickListener(OnClickListenerl)
publicvoidsetOnItemClickListener(AdapterView.OnItemClickListenerl) publicvoidaddLayoutTextChangedListener(TextWatchertextWatcher)
publicvoidremoveLayoutTextChangedListener(TextWatchertextWatcher)
publicvoidsetOnChipItemChangeListener(ChipItemChangeListenerl)
publicvoidremoveChipAt(intpos)
publicvoidremoveAllChips()
publicvoidsetAdapter(ArrayAdapteradapter)
publicvoidsetText(List<String> vals)
publicvoidsetTextColor(inttextColor)
publicvoidsetChipColor(intbgColor)
publicAdapterView.OnItemClickListenergetOnItemClickListener()
publicChipItemChangeListenergetOnChipItemChangeListener()
publicintgetTextColor()
publicintgetChipColor()
publicList<String> getText()
publicArrayAdaptergetAdapter()
publicvoidhighlightChipAt(intpos, DrawablebgDrawable, inttextColor)
publicvoidhighlightChipAt(intpos, intbgColor, inttextColor)
