如何禁用光标但在android中显示所选文本

时间:2012-11-23 04:39:27

标签: android android-layout

我想禁用光标以编辑文本,但显示颜色中的选定文本。但是当我关闭光标时,所选的文本颜色也不可见。

这是我编辑文本的代码。

<ScrollView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_above="@id/linearLayout2"
    android:layout_below="@id/linearLayout1"
    android:layout_gravity="center"
    android:padding="@dimen/padding_maintextview" >

    <LinearLayout
        android:id="@+id/linearLayout5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <EditText
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:layout_marginBottom="23dp"
            android:background="@null"
            android:gravity="right"
            android:inputType="none"
            android:padding="@dimen/padding_maintextview"
            android:text="@string/text"
            android:textAppearance="?android:attr/textAppearanceMedium" />
    </LinearLayout>
</ScrollView>

另一个问题是,当我选择单词时禁用输入类型,键盘会弹出。 我使用sdk min 8和max 15

请帮助我制作这个。

感谢。

2 个答案:

答案 0 :(得分:0)

在Edittext中添加以下属性

 android:focusableInTouchMode="false"
  

然后,当您选择文本时,您将获得光标。代码是   如下

<ScrollView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_above="@id/linearLayout2"
    android:layout_below="@id/linearLayout1"
    android:layout_gravity="center"
    android:padding="@dimen/padding_maintextview" >

    <LinearLayout
        android:id="@+id/linearLayout5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <EditText
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:layout_marginBottom="23dp"
            android:background="@null"
            android:gravity="right"
            android:inputType="none"
            android:focusableInTouchMode="false"
            android:padding="@dimen/padding_maintextview"
            android:text="@string/text"
            android:textAppearance="?android:attr/textAppearanceMedium" />
    </LinearLayout>
</ScrollView>

答案 1 :(得分:0)

Add below attribute in your edittext  

&LT; EditText android:id =“..”                   ..                   android:focusable =“false”/&gt;

只需在您的清单中放置stateAlwaysHidden属性

<activity name="EditContactActivity"
        android:windowSoftInputMode="stateAlwaysHidden">
        ...
    </activity>