- DSL for ConstraintLayout
- Preview plugin compatibility with Android Studio 3.1 C6
- Anko support plugin compatibility with Kotlin 1.1.60+
- Fix Xml to Dsl converter (#370)
lparams
forCollapsingToolbarLayout
, now returns correct LayoutParams (#275, #269)Context.clipboardManager
now returns newClipboardManager
instead of deprecated one (#180)- Generate layout wrapper for
CardView
(#269, #357) - Fix ClassParser's Boolean parser when type is Long (#464)
- Removed Dsl for classes from
android.support.design.internal.*
as they shouldn't be used outside of support library
TextInputEditText
added to anko-design (#205)- Anko commons dialog extensions now accept
CharSequence
instead ofString
(#422) - Add start and end rules to RelativeLayout.LayoutParams extensions (#497)
- Add
allCaps
andems
properties to TextView (#459) - Add snackbar helpers with indefinite duration (#454)
- Allow nullable values in
createIntent
andstartActivity
(#465) - Add extensions for
View::backgroundColorResource
andTextView::textColorResource
(#254) - Return
ComponentName
fromstartService
methods (#435) - Allow alerts to be cancelable (#405)
- Add intent helpers for stopping services (#509)
- Return toast object in toast helper functions (#512)
- Fixed Anko Support IDE plugin compatibility with Android Studio 3.0 RC1
Fragment.indeterminateProgressDialog
now shows indeterminate progress dialog instead of classic (#487)- Added methods for creating and dropping a index for SQLiteDatabase (#472)
- Fix assertion in the Anko Support IDE plugin (#387);
- Update
kotlinx.coroutines.android
dependency (the old one fails to resolve in Android Studio 3.0) )#381); - Fix inconsistency between
hasNext()
andnext()
inchildrenRecursiveSequence()
(#388).
- Coroutines and
DslMarker
annotation support; - Anko Support IDE plugin updated for Android Studio 2.4.
DslMarker
annotation support (callinglparams()
inside View blocks is finally forbidden);- DSL listeners moved to
anko-<platformName>-listeners
artifacts (e.g.anko-sdk25-listeners
); - View blocks with the
theme
parameter renamed tothemed…()
to avoid disambiguation; - Removed
AnkoLogger(clazz: KClass<*>)
andAnkoLogger(obj: Any)
.
anko-<platformName>-coroutines
(e.g.anko-sdk25-coroutines
) artifacts with the new listener helpers with coroutines support;bg()
function that executes code in background (wrapper on top of kotlinx.coroutines);AlertBuilder
interface with core and appcompat implementations.AlertDialogBuilder
is deprecated;Snackbar
helpers #203;Dialog.find()
method #351;foreach()
extensions forSparseArray
#255;- Reified version for
AnkoLogger
(AnkoLogger<MyClass>()
); isError
andhasValue
toAttemptResult
.
- Anko Support IDE plugin upated in order to support Android Studio 2.4;
- Added meta-artifact
org.jetbrains.anko:anko
; - Added Anko Commons artifacts for Android support libraries (
anko-support-v4-commons
,anko-appcompat-v7-commons
) #158; - New Android SDK target:
sdk-25
; - Updated Android Support library dependencies;
anko-common
artifact renamed toanko-commons
to reflect the naming changes.anko-common
is deprecated;ClassParser
now accepts all primitive types #320;- Synthetic properties (such as
act
orctx
) are nowinline
; lparams
functions are nowinline
#338;- Removed
TextView.enabled
generated property #245; - Accessing setter-only property values is now forbidden.
- Fix
NoSuchMethodError
on accessingact
property from the support Fragment #311; - Fix compatibility with Proguard #235;
- Require the relative view
id
to be set inRelativeView
helpers #363.
- DSL listeners moved to
anko-<platformName>-listeners
(e.g.anko-sdk15-listeners
) artifacts; - The custom
async()
function introduced in 0.10.0-beta1 was removed (useasync()
from kotlinx.coroutines); AnkoLogger(clazz: KClass<*>)
andAnkoLogger(obj: Any)
functions are removed;
anko-<platformName>-coroutines
(e.g.anko-sdk15-coroutines
) artifacts with the new listener helpers with coroutines support;lparams
functions are nowinline
#338;bg()
function that executes code in a background thread and returnsDeferred<T>
;AnkoLogger
now has the reified version:AnkoLogger<MyClass>()
;
Anko 0.10 requires Kotlin 1.1.
- View DSL functions that accept the
theme
parameter are renamed tothemed…()
to avoid disambiguation; DslMarker
support (lparams
inside the View lambda are now forbidden);
- Add
anko-coroutines
artifact with the Kotlin 1.1 coroutines support (async
/bg
); - New Android SDK target:
sdk-25
; - Android Support library dependencies updated;
AlertBuilder
interface with core and app-compat implementations.AlertDialogBuilder
is deprecated;ClassParser
now accepts all primitive types #320;- New artifacts:
anko-support-v4-common
andanko-appcompat-v7-common
(with basic helpers, without the DSL functionality) #158; - Synthetic properties (such as
act
orctx
) are nowinline
; TextView.enabled
generated property is removed #245;- Accessing setter-only property values is forbidden;
- SAM View listener setter functions are now
inline
; - Add
isError
andhasValue
toAttemptResult
; - Fix
NoSuchMethodError
on accessingact
property from the support Fragment #311.
- Allow to use
AnkoLogger
as an instance #262; FOREIGN_KEY
now returnsPair<String, SqlType>
#258 #219;- Fix
SparseArray
as sequence returns list which doesn't match its size #243 #240; - Allow ManagedSQLiteOpenHelper to accept null for database name #228;
- Fix ProGuard warning (can't find referenced method 'int getThemeResId()' in library class android.view.ContextThemeWrapper). #206;
- Add
LayoutParams.baselineOf()
#213; - Allow nullable values in
intentFor
#211; - Migrate Anko build to Gradle.
- Update to Kotlin 1.0.2 and IDEA 2016.1 #161 #177;
- Support styles in DSL #16 #143;
- Add KDoc comments for most of Anko utilities #168;
- Rename
async()
todoAsync()
,onUiThread()
torunOnUiThread()
forFragment
andContext
; - Add
AnkoAsyncContext.onComplete()
#181; uiThread()
now returnsfalse
if code was not executed;- Ability to add an exception handler to
doAsync()
#182; - Add
newTask
parameter tobrowse()
#186; - Add
sendSMS()
#171; - Add
makeStyle()
#132; - Add
Activity.contentView
property #157; - Add
horizontalProgressBar()
#23; - Add
doFromSdk()
anddoIfSdk()
#118; - Add
alignStart()
andalignEnd()
toRelativeLayout.LayoutParams
extensions; AlertDialogBuilder
: make thedialog
property public #140;- Add
okButton()
,yesButton()
,cancelButton()
,noButton()
toAlertDialogBuilder
; - Add nullable values to SQLite helpers #154;
- Add
editText()
with input constraints #25; - Add
attempt()
#182; - Change semantics of
Intent.clearTask()
and similar functions, now add flags, not set (replace old) #173; - Rename
forEachReversed
toforEachReversedByIndex()
; - Rename
style()
toapplyRecursively()
; - Allow the database to be pluggable for query builders #187;
- Fix
NOT_NULL
SQL type modifier #175; - Fix
startActivityForResult
called on wrong object (for Fragments) #76; - Fix
include
doesn't set LayoutParams from the XML #149; View.backgroundDrawable
is nullable now #169;classParser
has always not accessible constructor #136 #145.
Built for Kotlin 1.0.
- Remove deprecated
android.support.v4.Fragment.addView()
function.
Built for Kotlin 1.0 RC.
forEachChild()
,forEachChildWithIndex()
,firstChild()
,firstChildOrNull()
are inlined now #134;Int.withAlpha
#125;ContextWrapper
is now supported byAnkoContext
;- Anko library size and method count was slightly reduced.
Built for Koltin Beta 3 (1.0.0-beta-3595).
- SQLite helpers are moved to
anko-sqlite
artifact; - Fixed "Implicit setContentView in onCreate doesn't work in 0.8" #114;
- Fixed "Anko DSL Preview plugin 0.8 crashes" #115;
- Add intention:
0xffefefef.toInt()
→0xef.gray.opaque
; - Add
forEachChild()
,firstChild()
,firstChildOrNull()
helpers.
Built for Kotlin Beta 2 (1.0.0-beta-2423).
AnkoComponent
interface for writing reusable components;- New DSL preview plugin: much more fast and stable 🚀;
- Add
TextView.gravity
#96 andImageView.imageResource
#102 properties; Cancel
is the default negative button name #112;- Fix
AnkoLogger.wtf
; - Remove deprecated
__dslAddView
functions.
Built for Kotlin Beta Candidate (1.0.0-beta-1103
).
Built for Kotlin Beta Candidate.
Built for Kotlin M14 (0.14.449).
- #86 New: Allow getting MenuItems as a Sequence.
- New: Added
findOptional<T>
forView
,Activity
andFragment
. - Fix: An exception in DSL Preview plugin in Android Studio 1.4.
Built for Kotlin M13 (0.13.1513).
- Anko is now split to several components:
anko-common
contains some basic helpers (such asasync
,toast
or SQLite parsers). Does not contain any of view DSL).anko-sdk15
(also19
,21
,23
) contains DSL bindings for the corresponding Android SDK version.anko-support-v4
,anko-appcompat-v7
and others - additional DSL bindings for the Android support library widgets.
- #78 Changed
async
logic. - Most of extension properties for Views are removed because Kotlin now supports this seamlessly.
- #74 New: Ability to iterate children views lazily using sequences.
- #77 New: Extension functions for the optimized Android collections and arrays.
layoutParams
property is renamed tolparams
(due to the clash withView.getLayoutParams
).
Built for Kotlin M12.1 (0.12.613).
- New: Tinted (appcompat) widgets support.
- Deprecated extension properties for
RSSurfaceView
,RSTextureView
,WebView
are removed. - Intentions for
Toast.makeText(...).show()
andfindViewById()
in IDEA plugin. - #54 Fix: LayoutParams resolving for some widgets.
- #60 Support more types in
intentFor
. - #65 Fix:
AnkoLogger
can't now be used as a delegate. - Fix:
InterfaceWorkarounds
fields. - DSL Preview plugin is updated to Robolectric 3.0 rc3.
- DSL generator refactoring.
Built for Kotlin M12 (0.12.200).
- Sensible listener argument names.
- Some listener arguments and properties are now not-null.
- New: Added
bundleOf
function. - New: Added
getBuilder
inAlertDialogBuilder
. - #42 New: Added
Context.startService
extension. - #46 Fix:
IllegalArgumentException
inAnkoLogger
. - #44 Fix: Wrong return type for
include
. - #42 Fix:
INTEGER
SqlType
instead ofINT
. - #31 Fix: Added
withArguments
forandroid.support.v4.Fragment
. - #45 Fix:
SingleColumnParser
andScalarColumnParser
. - #38 Fix:
SQLiteDatabase.dropTable
signature.
Built for Kotlin M11 (0.11.91.4).
- #30 Fix: Arguments in
intentFor
. - #29 New:
android.support.v4.app.Fragment.withArguments
function. - #26 New: More extension properties (including
emptyView
forAdapterView
). - #21 Fix: Supported String resources with
progressDialog
andindeterminateProgressDialog
.
Built for Kotlin M11 (0.11.91.2).
- Breaking: package name change (kotlinx.android.anko → org.jetbrains.anko).
- Breaking: new syntax for multi-method listeners.
- New: Supported Configuration qualifiers.
- New: Custom views creation.
- New: Supported
appcompat.v7
views and properties. - Top-level DSL functions for simple views are removed.
- New:
startActivityForResult
,dimen
extension functions. - New:
uiThread
property forContext
andFragment
.
Built for Koltin M11 (0.11.91.1).
- Rebranding: Koan → Anko! ✨
- Preview plugin is available for IntelliJ IDEA and Android Studio.