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>