
Security News
Another Round of TEA Protocol Spam Floods npm, But It’s Not a Worm
Recent coverage mislabels the latest TEA protocol spam as a worm. Here’s what’s actually happening.
com.github.lamydev:android-spannedautocompleteview
Advanced tools
SpannedAutoCompleteView is a subclass of MultiAutoCompleteTextView.
The auto-complete text is converted into a image span.
Sample code is also available in this repository.

Android-SpannedAutoCompleteView library is pushed to Maven Central as a AAR, so you just need to declare the following dependency to your build.gradle.
dependencies {
compile 'com.github.lamydev:android-spannedautocompleteview:1.0'
}
The image span is constructed by a stack of SpannAutoCompleteView#SpanLayer.
The span background resides at the bottom of the span layer stack.
public void setSpanBackground(int resId);
public void setSpanBackground(Drawable drawable);
To create a new span layer:
public SpanLayer createSpanLayer();
To destroy a span layer:
public void destroySpanLayer(SpanLayer layer);
SpannedAutoCompleteView#SpanLayer)To set a Drawable to a span layer:
public SpanLayer setDrawable(int resId);
public SpanLayer setDrawable(Drawable drawable);
To set gravity of a span layer (default is CENTER):
____________________________
| |
| Top |
| -------------- |
| | | |
| Left | Center | Right |
| | | |
| -------------- |
| Bottom |
|____________________________|
public SpanLayer setGravity(int gravity);
To set margins of a span layer:
public SpanLayer setMargin(int l, int t, int r, int b);
To remove a span associated with the dropdownItem:
public void removeSpan(Object dropdownItem);
To remove a span automatically when the associated dropdownItem gets clicked:
public void setAutoRemove(boolean auto);
By default, the tokenizer is automatically set up during view construction.
You don't need to consider about it. However, if you do, please remember that:
The parameter Tokenizer passed to setTokenizer MUST be an instance of SpannedAutoCompleteView#DefaultTokenizer.
Otherwise, exception IllegalArgumentException will be thrown.
By default, the separator is a white space ' '.
public void setSeparator(char separator);
public void setSeparator(CharSequence separator);
By setting a callback, you can monitor any events occurred on a span.
public void setCallback(Callback cb);
Called when the user clicks on a dropdownItem to complete the text:
void onSpanCreate(SpannedAutoCompleteView view, Object dropdownItem);
Called when a span is added:
void onSpanAdded(SpannedAutoCompleteView view, Object dropdownItem);
Called when a span is removed:
void onSpanRemoved(SpannedAutoCompleteView view, Object dropdownItem);
Called when the user clicks on a span:
void onSpanClick(SpannedAutoCompleteView view, Object dropdownItem);
Any questions, contributions, bug fixes, and patches are welcomed. ^_^
Copyright (C) 2015 Zemin Liu
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.
FAQs
Android SpannedAutoCompleteView
We found that com.github.lamydev:android-spannedautocompleteview demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Recent coverage mislabels the latest TEA protocol spam as a worm. Here’s what’s actually happening.

Security News
PyPI adds Trusted Publishing support for GitLab Self-Managed as adoption reaches 25% of uploads

Research
/Security News
A malicious Chrome extension posing as an Ethereum wallet steals seed phrases by encoding them into Sui transactions, enabling full wallet takeover.