相关疑难解决方法(0)

"android:textIsSelectable ="true"不适用于RecyclerView中的TextView

我知道android:textIsSelectable="true"在xml 中设置TextView将显示本机文本选择弹出窗口,我一直在我的应用程序中使用它.但是当我尝试在附加到视图中的视图中设置相同属性时,我发现它不再起作用了RecyclerView.每当我尝试选择文本时,会出现以下日志 -

TextView: TextView does not support text selection. Action mode cancelled.
Run Code Online (Sandbox Code Playgroud)

我不知道为什么?为什么它适用于其他屏幕而不是 RecyclerView.我看了很多帖子 -

带有android的TextView:textIsSelectable ="true"在listview中不起作用

textview textIsSelectable ="true"在Listview中不起作用

对于ListView中的TextView,android:textIsSelectable ="true"不起作用

但后来我遇到了这篇帖子 -

Android:"TextView不支持文本选择.操作模式已取消"

回复@hungkk给我工作.他的建议的解决方案的TextView宽度改变为wrap_contentmatch_parent.

我知道我可以这样做,但我的问题是如何解决这个问题,因为它看起来很奇怪.而且,如果我想保持宽度,解决方案是什么match_parent.

欢迎提出任何意见.

android textview android-recyclerview

25
推荐指数
4
解决办法
4610
查看次数

如何在PopupWindow中为EditText启用选择标记?

我正在使用EditTexta PopupWindow.它显示OK,但选择标记不显示在EditText.当我长按时,选项菜单也不会改变EditText.在LogCat中,我看到一个警告

TextView不支持文本选择.动作模式已取消.

因此,EditText无法从剪贴板复制/粘贴文本.有什么方法可以获得"正常"的EditText行为PopupWindow吗?

此代码显示了问题,但我也尝试了很多变化:

EditText edit = new EditText(getContext());
edit.setBackgroundColor(Color.BLUE);
PopupWindow popup = new PopupWindow(edit, 100, 100, true);
popup.setBackgroundDrawable(new BitmapDrawable());
popup.showAtLocation(this, Gravity.NO_GRAVITY, 100, 200);
Run Code Online (Sandbox Code Playgroud)

android android-ui

11
推荐指数
1
解决办法
3733
查看次数

应用程序暂停后,Scrollable TextView不允许选择文本

我有一个可滚动TextView的用户可以选择文本.我通过设置移动方法来添加滚动条ScrollingMovementMethod.

问题:除非应用程序暂停(例如,切换应用程序后),否则选择效果很好.一旦应用程序处于活动状态,选择将停止工作,并在日志中收到以下消息:

W/TextView:TextView不支持文本选择.选择取消.

我的设置:

我有一个Activity CoordinatorLayout和一个TextView包含在RelativeLayout其中的片段,如下所示:

<TextView
    android:id="@+id/text_view"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentStart="true"
    android:scrollbars="vertical" />
Run Code Online (Sandbox Code Playgroud)

在Java代码中,我必须这样做:

textView.setMovementMethod(new ScrollingMovementMethod());
textView.setTextIsSelectable(true);
textView.setFocusable(true);
textView.setFocusableInTouchMode(true);
Run Code Online (Sandbox Code Playgroud)

因为根据这个,这是唯一的工作方式,这个问题.

编辑:

问题出在以下调用中

textView.setMovementMethod(new ScrollingMovementMethod());
Run Code Online (Sandbox Code Playgroud)

如果我删除它有效,但我无法理解.

重现问题的最小步骤:

1)TextView使用以下布局创建一个空的Activity .

<android.support.design.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:id="@+id/text_view"
        android:text="Some very very very long text..."
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:scrollbars="vertical" />

</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)

2)设置TextViewin onStart()方法的可见性参数.

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) …
Run Code Online (Sandbox Code Playgroud)

android textview android-layout

8
推荐指数
1
解决办法
838
查看次数

在android中的PopupWindow中为edittext启用复制粘贴

我正在使用 PopupWindow 从用户那里获取一些数据。令人惊讶的是,我无法在 EditText 布局中选择文本,这是要求,因为我希望用户能够(从任何地方)复制并粘贴到此处。我已经明确用于android:textIsSelectable="true"我的 EditText。这是我用于 EditText 的属性。

       <EditText
        android:layout_width="match_parent"
        android:layout_height="48dp"
        android:id="@+id/emailEdit"
        android:inputType="textEmailAddress"
        android:textIsSelectable="true"
        android:drawableLeft="@drawable/email"
        android:drawablePadding="16dp"
        android:layout_margin="@dimen/actionable_horizontal_margin"
        android:singleLine="true"
        android:hint="Email"
        />
Run Code Online (Sandbox Code Playgroud)

我也在设置popup.setFocusable(true)。还有什么需要做的吗?

我的复制粘贴适用于活动和片段中的其他 EditText。

PS 我不想使用自定义剪贴板操作。

android popupwindow android-layout

7
推荐指数
0
解决办法
900
查看次数

textview textIsSelectable ="true"在Listview中不起作用

 <TextView
                    android:id="@+id/txtSender"
                    style="@android:style/TextAppearance.Small"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_centerVertical="true"
                    android:layout_marginTop="10dp"
                    android:background="@drawable/sender_bubble"
                    android:gravity="center_vertical"
                    android:maxEms="11"
                    android:paddingBottom="5dp"
                    android:paddingLeft="5dp"
                    android:paddingRight="15dp"
                    android:paddingTop="5dp"
                    android:text="1234567"
                    android:autoLink="all"
                    android:textColor="@color/color_black"
                    android:textIsSelectable="true"
                    android:visibility="visible" />
Run Code Online (Sandbox Code Playgroud)

这是我在customcell中的textview.当我点击textview时,它不允许我在textview中选择文本.它在我的xperia 4.2.2中运行得很完美,但是当我在4.4.4版本的设备中运行相同的代码时,它无效.

注意:当我将相同的android:textIsSelectable ="true"属性设置为不在Listview中的Textview时,它在4.4.4中工作正常.Listview只是移动到底部并在半秒内重置到其原始位置.

android listview textview

6
推荐指数
1
解决办法
4959
查看次数