Professional Documents
Culture Documents
PB2 Program 7
PB2 Program 7
PB2 Program 7
XML Code:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/root"
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"
tools:context=".MainActivity">
<com.google.android.material.textview.MaterialTextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp"
android:text="Clipboard Activity"
android:textSize="24sp"
app:layout_constraintBottom_toTopOf="@+id/copy_this"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_chainStyle="packed" />
<LinearLayout
android:id="@+id/linearLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="8dp"
android:orientation="horizontal"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/paste_here">
<com.google.android.material.button.MaterialButton
android:id="@+id/copy_text"
android:layout_width="wrap_content"
android:layout_height="54dp"
android:layout_margin="8dp"
android:text="Copy
Text"></com.google.android.material.button.MaterialButton>
<com.google.android.material.button.MaterialButton
android:id="@+id/paste_text"
android:layout_width="wrap_content"
android:layout_height="54dp"
android:layout_margin="8dp"
android:gravity="center"
android:text="Paste Text"
tools:layout_editor_absoluteX="229dp"
tools:layout_editor_absoluteY="474dp"></com.google.android.material.button.
MaterialButton>
</LinearLayout>
<com.google.android.material.textfield.TextInputLayout
Mobile Application Development – 18CSMP68
2 Program 14: Clipboard Activity
android:id="@+id/copy_this"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="8dp"
app:layout_constraintBottom_toTopOf="@+id/paste_here"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/title">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/copy_this_text"
android:layout_width="match_parent"
android:layout_height="150dp"
android:gravity="start"
android:hint="Enter Some Text and Copy" />
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textview.MaterialTextView
android:id="@+id/paste_here"
android:layout_width="match_parent"
android:layout_height="150dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="8dp"
app:layout_constraintBottom_toTopOf="@+id/linearLayout"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/copy_this" />
</androidx.constraintlayout.widget.ConstraintLayout>
Java Code:
package `in`.edu.REC.clipboard
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.view.View
import android.widget.Button
import android.widget.EditText
import android.widget.TextView
import android.widget.Toast
import com.google.android.material.snackbar.Snackbar
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
copyText = findViewById(R.id.copy_this_text)
copyBtn = findViewById(R.id.copy_text)
copyBtn.setOnClickListener { copyText() }
pasteText = findViewById(R.id.paste_here)
pasteBtn = findViewById(R.id.paste_text)
pasteBtn.setOnClickListener { pasteText() }
fun copyText(){
val contextView = findViewById<View>(R.id.root)
val snack = Snackbar.make(contextView, "Text Copied",
Snackbar.LENGTH_INDEFINITE)
snack.show()
fun pasteText(){
pasteText.text = copyText.text.toString()
val contextView = findViewById<View>(R.id.root)
val snack = Snackbar.make(contextView, "Text Pasted",
Snackbar.LENGTH_INDEFINITE)
snack.show()
}
}
Output: