Вызов поля EditText в фокус

У меня есть EditText что я установил невидимым по умолчанию. Я хотел бы сделать эту коробку видимой onclick of a ImageView, но не могу найти какую-либо документацию онлайн, чтобы помочь мне, как бы я поступил так?

3 ответа

Решение

В вашем xml

<EditText
    android:id="@+id/my_edit_text"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:layout_weight="1"
    android:singleLine="true"
    android:inputType="number"

    android:visibility="gone"

    android:paddingRight="8dp" />

В вашем классе деятельности

import android.widget.Button;
import android.widget.EditText;

public class MyActivity extends Activity {

    private EditText editTxt = null;
    private Button myBtn = null;

    @Override
    public void onCreate(Bundle icicle) {

        super.onCreate(icicle);
        setContentView(R.layout.my_xml_layout);

        editTxt = (EditText) findViewById(R.id.my_edit_text);

        myBtn = (Button) findViewById(R.id.my_button);
        myBtn.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                editTxt.setVisibility(View.VISIBLE);
            }
        });
    }

}

Вы можете использовать JQuery для переключения отображения (display:none против display:block) в вашем поле EditText. Вы, вероятно, хотите начать с display: none в EditTextBox. Вам также нужно будет загрузить JQuery на вашу страницу. Не могу сделать это подробным уроком, чтобы дать вам достаточно, чтобы перейти на следующий уровень.

$jq(document).ready(function() {
  $jq("#yourImageView").click(function(e) {
     $jq("#yourEditTextBox").fadeToggle("slow", "linear");
});

Ну вместо невидимого вы можете отключить его. Таким образом, вы можете предотвратить его от ввода пользователя. И это очень легко включить или отключить EditTex.

Другие вопросы по тегам