Bagaimana Caram Membuat Form TextArea Di Android STudio?

Baringin
By -
0

 Pendahuluan


    TextArea merupakan komponen input yang memiliki multiline di dalamnya. Komponen ini sering digunakan sebagain desain untuk menginput karakter yang panjang. Sayangnya Android tidak memiliki komponen TextArea secara khusus.  jadi kita memerlukan beberapa cara rumit untuk membuatnya TextArea, dalam artian kita memodifikasi komponen yang telah ada dan menambahkan attribut ke dalamnya.

     Satu-satunya masukan teks dalam tata letak Android hanyalah EditTeks, jadi komponen ini dapat kita manfaatkan untuk memanipulasi textarea.


    Ciri-Ciri TextARea

  1. Multiline
  2. Dapat di-scroll dari dalam, sehingga kita dapat melihat semua teks di dalam textarea.
  3. Teks di TextArea dimulai dari pojok Kiri Atas.
  4.  Memiliki type kotak.
  5. Dapat di-scroll dari atas ke bawah dan kanan ke kiri.

    Jadi kita dapat menambahkan fitur ini ke widget EditText normal di Android. Perhatikan kode TextView di bawah ini:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="20dp"
tools:context=".MainActivity">

<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Tulis Alamat Anda"
android:layout_marginBottom="10dp"
android:textSize="16dp"/>

<EditText
android:id="@+id/textArea"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="50dp"
android:gravity="top|left"
android:inputType="textMultiLine"
android:overScrollMode="always"
android:scrollbarStyle="insideInset"
android:scrollbars="vertical"
android:lines="6"
android:textAppearance="?android:attr/textAppearanceMedium"
android:scrollHorizontally="false"/>
</RelativeLayout>

    Ada beberapa attribut penting yang kita tambah:

    Attribut "android:inputType="textMultiLine"" untuk mendukung agar EditText dapat menerima input berupa enter yang akan menambahkan line baru.  Kemudian kita atur "android:gravity = top|left" agar posisi text pertama berada pada bagian atas dan sebelah kiri.

    Saat kita menjalankan program dan mencoba melakukan scroll maka akan terjadi masalah. Kita perlu mengatasinya dengan membuat code program. Berikut code programnya.

package com.example.latihanapp

import android.os.Bundle
import android.view.MotionEvent
import android.view.View
import android.widget.EditText
import androidx.appcompat.app.AppCompatActivity

class MainActivity : AppCompatActivity() {
lateinit var textArea:EditText

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)

textArea = findViewById(R.id.textArea)

textArea.setOnTouchListener(object : View.OnTouchListener{
override fun onTouch(v: View?, event: MotionEvent?): Boolean {
v!!.parent.requestDisallowInterceptTouchEvent(true)
when (event!!.action and MotionEvent.ACTION_MASK) {
MotionEvent.ACTION_UP -> v.parent.requestDisallowInterceptTouchEvent(false)
}
return false
}
})
}
}


Berikut Hasilnya:



    Demikianlah teknik membuat TextArea di android studio

     

Post a Comment

0Comments

Post a Comment (0)