2014-09-21 5 views
1

В моем Android я создал свою собственную графику, когда пользователь вводит свой пароль.Как ввести текст в невидимое текстовое поле

Тем не менее, мне нужно, чтобы клавиатура чисел появлялась, когда пользователь нажимает на графику пароля, поэтому я поместил EditText над графикой и сделал ее невидимой. Я ожидал, что это вызовет клавиатуру, когда пользователь наткнется на нее, но это не так. Кроме того, когда пользователь набирает текст, я хочу, чтобы этот текст добавлялся невидимо к EditText, а затем отправлялся после завершения.

Так что мой вопрос: как я могу создать невидимый EditText, который действует так, как будто это не так. То есть, он вызывает клавиатуру при нажатии, а также принимает вход?

Например, вот мой XML-файл:

<LinearLayout 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:weightSum="1"> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textAppearance="?android:attr/textAppearanceMedium" 
     android:text="@string/enter_passcode" 
     android:id="@+id/textView" 
     android:layout_gravity="center_horizontal" 
     android:layout_marginTop="10dp" /> 

    <EditText 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:inputType="numberPassword" 
     android:ems="10" 
     android:background="@null" 
     android:id="@+id/editText" 
     android:layout_gravity="center_horizontal" 
     android:layout_weight="0.05" /> 

    <ImageView 
     android:layout_width="214dp" 
     android:layout_height="wrap_content" 
     android:src="@drawable/passcode0" 
     android:id="@+id/passcodeImageView" 
     android:layout_gravity="center_horizontal" 
     android:baselineAlignBottom="false" 
     android:clickable="true" 
     android:onClick="onPasscodeDigitPressed" 
     android:layout_marginTop="20dp" /> 

</LinearLayout> 

ответ

2

попробовать один из этих трех возможностей для EditText в XML

android:background="@android:color/transparent" 
android:textcolor="@android:color/transparent" 
android:cursorVisible="false" 

или

android:alpha="0" 

или

android:visibility="invisible" 
+0

Предложение № 1 работало, но я должен был добавить 'android: cursorVisible =" false "' для завершения эффекта. Вы можете добавить это к своему ответу, и я соглашусь – Raphi

+0

добавил 'android: cursorVisible =" false "'. Спасибо, что приняли – FreshD

0
<EditText 
     android:id="@+id/youedittext" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:background="@android:color/transparent" 
     android:cursorVisible="false" 
     android:textcolor="@android:color/transparent" /> 
+0

Спасибо за ответ! Хотелось бы, чтобы я мог проголосовать, но у меня нет достаточной репутации, поэтому, пожалуйста, проголосуйте за меня сначала :) – Raphi

+0

вам не следует просить о повышении.> без проблем нет необходимости голосовать –

+0

Иногда люди забывают. – Raphi

0

Итак, вы в любом случае идти с: андроид: TextColor = «@ андроида: цвет/прозрачный», или вы могли бы сделать что-то еще вроде этого:

<EditText 
    android:id="@+id/youedittext" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:background="@android:color/white" 
    android:cursorVisible="false" 
    android:textColor="@android:color/white" /> 

Это сделает ваш текст, как ваш фон, цвет мудрый, поэтому вы получите «невидимый» текст.

+0

Спасибо за ответ! Хотел бы я проголосовать, но у меня нет достаточной репутации, поэтому, пожалуйста, сначала проголосуйте за меня :) – Raphi

Смежные вопросы