Мне нужно создать приложение, которое берет строку («Это тест») из EditText с идентификатором «morseDisplay» и записывает ее в файл «test1.txt» при нажатии кнопки «subBtn». Затем сжимает строку и записывает ее в другой файл «test2.txt». После этого сжатая строка из файла «test2.txt» считывается в TextView с идентификатором «ressionDisplay ». Я использую 2 файла, так что я могу выбрать, чтобы переключить процесс и распаковать из «test2.txt» в «test1.txt». Я искал Сжатие в азбуке Морзе, и я нашел только исследования, ни один алгоритм на самом деле не реализован. Одним из исследований, который казался более явным, был следующий: https://www.researchgate.net/publication/285337332_Compression_Using_Morse_Code_and_Data_Patterns?fbclid=IwAR3k9MEREOf8L5K_g__ItjV4GXR3IFxTlenhnt3AIfMg3HrJBiFga54JN1g
Файл activity_compression. xml выглядит следующим образом:
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.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:id="@+id/conMain"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:theme="@style/DarkTheme_Background"
tools:context=".CompressionActivity">
<EditText
android:id="@+id/morseDisplay"
style="@style/DarkTheme_Boxes"
android:layout_width="328dp"
android:layout_height="147dp"
android:layout_centerHorizontal="true"
android:layout_marginStart="28dp"
android:layout_marginLeft="28dp"
android:layout_marginTop="44dp"
android:gravity="top"
android:imeOptions="actionSend"
android:inputType="textCapCharacters"
android:radius="2dp"
android:textCursorDrawable="@null"
android:textSize="25dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/compressionDisplay"
style="@style/DarkTheme_Boxes"
android:layout_width="341dp"
android:layout_height="143dp"
android:layout_alignTop="@+id/morseDisplay"
android:layout_alignBottom="@+id/morseDisplay"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="false"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginStart="28dp"
android:layout_marginLeft="28dp"
android:layout_marginTop="240dp"
android:scrollbars="vertical"
android:textSize="25dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/textView2"
style="@style/DarkTheme_Boxes"
android:layout_width="144dp"
android:layout_height="27dp"
android:layout_below="@+id/morseDisplay"
android:layout_alignRight="@+id/morseDisplay"
android:layout_alignParentLeft="true"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginStart="28dp"
android:layout_marginLeft="28dp"
android:layout_marginTop="8dp"
android:text="Compression:"
android:textSize="20dp"
app:layout_constraintBottom_toTopOf="@+id/transDisplay"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/morseDisplay"
app:layout_constraintVertical_bias="0.454" />
<Button
android:id="@+id/subBtn"
style="@style/DarkTheme_Buttons"
android:layout_width="211dp"
android:layout_height="47dp"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="400dp"
android:onClick="submitButton"
android:text="Submit"
android:textSize="30dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>
Так должно выглядеть действие_компрессия. xml должно выглядеть Спасибо за вашу поддержку!