我有以下布局,使用窗口管理器显示在所有其他应用上方。
AppCompatEditText部分的注释位置为:
文本编辑(输入,删除)将传播到包含EditText的布局下的布局,而不是自己的布局。
问题是:如何正确传播EditText事件以获得编辑文本组件中文本的能力,而不是将事件向下传播到顶层窗口下的底层?
<?xml version="1.0" encoding="utf-8"?>
<com.daimajia.swipe.SwipeLayout android:id="@+id/sample1"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<!-- BOTTOM VIEW LEFT-->
<LinearLayout
android:id="@+id/bottom_wrapper"
android:layout_width="160dp"
android:layout_height="match_parent"
android:background="#cdb70d0d"
android:weightSum="1">
<!--What you want to show-->
<TextView
android:id="@+id/closeResultBubble"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="center_horizontal|center_vertical"
android:text="@string/swipe_to_close"
android:textColor="@color/white"
android:textSize="15sp"/>
</LinearLayout>
<!-- SURFACE VIEW START - MAIN VISIBLE CONTENT (SHOWN BY DEFAULT) -->
<phonetoaster.com.bubbletranslate.activity.TouchableLinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:focusable="true"
android:focusableInTouchMode="true"
android:orientation="vertical"
app:layout_behavior="@string/AUTO"
app:layout_collapseParallaxMultiplier="1.0">
<!--HEADING WITH ICON BUTTONS-->
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
>
<!--HEADING WITH ICON BUTTONS-->
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="40dp"
android:background="@color/main_blue"
android:orientation="horizontal"
android:weightSum="10">
<android.support.v7.widget.AppCompatImageButton
android:id="@+id/settingsButtonTop"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="2"
android:adjustViewBounds="true"
android:background="@null"
android:contentDescription="@string/settings"
android:src="@drawable/settings"
android:tint="@color/white"/>
<android.support.v7.widget.AppCompatTextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="6"
android:gravity="center"
android:text="@string/app_name"
android:textColor="@color/white"
android:textSize="15sp"/>
<android.support.v7.widget.AppCompatImageButton
android:id="@+id/closeButtonTop"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="2"
android:adjustViewBounds="true"
android:background="@null"
android:contentDescription="@string/close"
android:src="@drawable/close"
android:tint="@color/white"/>
</LinearLayout>
<!--RESULT-->
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/white"
android:descendantFocusability="beforeDescendants"
android:orientation="vertical"
android:padding="10dp">
<!--ORIGINAL PART-->
<!--ORIGINAL SETTINGS BAR-->
<LinearLayout
android:id="@+id/original_text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/white"
android:orientation="horizontal">
<android.support.v7.widget.AppCompatTextView
android:id="@+id/textViewOriginalTextSelectedLanguage"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="start"
android:text="@string/original"
android:textColor="@color/dark_gray"
android:textSize="15sp"/>
<Spinner
android:id="@+id/source_lang_spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="@color/main_blue"
android:gravity="start"/>
</LinearLayout>
<!--ORIGINAL TEXT-->
<!-- THIS EDITTEXT CANNOT BE EDITED -->
<android.support.v7.widget.AppCompatEditText
android:id="@+id/editTextSourceText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:focusableInTouchMode="true"
android:focusable="true"
android:cursorVisible="true"
android:gravity="start"
android:inputType="textMultiLine"
android:text="@string/lipsum"
android:textColor="@color/dark_gray"
android:textSize="15sp"/>
<ScrollView
android:id="@+id/scrollViewSource"
android:layout_width="fill_parent"
android:focusableInTouchMode="true"
android:layout_height="110dp"
android:scrollbars="vertical">
<!--
<android.support.v7.widget.AppCompatTextView
android:id="@+id/textViewSourceText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:focusableInTouchMode="true"
android:gravity="start"
android:inputType="textMultiLine"
android:text="@string/lipsum"
android:textColor="@color/dark_gray"
android:textSize="15sp"/>
-->
</ScrollView>
<!--HORIZONTAL RULE-->
<View style="@style/Divider"/>
<!--TRANSLATION PART-->
<LinearLayout
android:id="@+id/translated_text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/white"
android:orientation="horizontal">
<!--LANG BAR-->
<android.support.v7.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="start"
android:text="@string/original"
android:textColor="@color/dark_gray"
android:textSize="15sp"/>
<Spinner
android:id="@+id/translation_lang_spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="@color/main_blue"
android:gravity="start"/>
</LinearLayout>
<!--TRANSLATED TEXT-->
<ScrollView
android:id="@+id/scrollViewResult"
android:layout_width="fill_parent"
android:layout_height="110dp"
android:scrollbars="vertical">
<android.support.v7.widget.AppCompatTextView
android:id="@+id/textViewTranslatedText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="start"
android:inputType="textMultiLine"
android:text="@string/lipsum"
android:textColor="@color/dark_gray"
android:textSize="15sp"/>
</ScrollView>
</LinearLayout>
<!--COPY TRANSLATION BTN-->
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/white"
android:orientation="vertical">
<android.support.v7.widget.AppCompatButton
android:id="@+id/copyTranslationButton"
android:layout_width="fill_parent"
android:background="@color/main_blue"
android:textColor="@color/white"
android:text="@string/copy_to_clipboard"
android:layout_height="wrap_content"/>
</LinearLayout>
<!-- Surface View End -->
</LinearLayout>
</phonetoaster.com.bubbletranslate.activity.TouchableLinearLayout>
<!-- Surface View End -->
</com.daimajia.swipe.SwipeLayout>