MainActivity.kt
package com.cfsuman.kotlintutorials
import android.os.Bundle
import android.text.method.ScrollingMovementMethod
import android.widget.TextView
import androidx.appcompat.app.AppCompatActivity
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// get the widgets reference from XML layout
val textView = findViewById<TextView>(R.id.textView)
// make textview content scrollable
textView.movementMethod = ScrollingMovementMethod()
val string = "This is A SAMple striNg."
textView.text = string
/*
documentation source: kotlinlang.org
Splits the original char sequence into pair of char sequences,
where first char sequence contains characters for which
predicate yielded true, while second char sequence
contains characters for which predicate yielded false.
*/
val result:Pair<String,String> = string.partition {
it.isUpperCase()
}
textView.append("\n\n")
textView.append("Uppercase characters....\n")
textView.append(result.first)
textView.append("\n\n")
textView.append("Exclude uppercase characters....\n")
textView.append(result.second)
}
}
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F8F8F8"
android:padding="24dp">
<TextView
android:id="@+id/textView"
android:layout_width="0dp"
android:layout_height="0dp"
android:fontFamily="sans-serif"
android:textSize="24sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>

- kotlin - Copy text to clipboard
- kotlin - Clipboard listener
- kotlin - Drag and drop
- kotlin - Coroutines flow api
- kotlin ktx - Background foreground color span
- kotlin ktx - Font family, style, size span
- kotlin ktx - URLSpan
- kotlin syntax - String padStart and padEnd
- kotlin syntax - Prepend indent to string every line
- kotlin syntax - Match two strings region
- kotlin syntax - String remove prefix and suffix