如何在聚焦时放大edittext。 (像谷歌镀铬网址字段)

时间:2015-03-21 10:19:17

标签: java android google-chrome android-edittext

如何在聚焦时放大edittext,在解除聚焦时返回默认值。 (如Google Chrome网址)

edittext是@ + id / edittext

这是我的代码: --custom_actionbar -

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="50dp">

    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/edittext"
        android:hint="@string/url"
        android:inputType="text|textNoSuggestions"
        android:imeOptions="flagNoExtractUi|actionSend"
        android:selectAllOnFocus="true"
        android:background="#ffe0e0e0"
        android:layout_centerVertical="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_toLeftOf="@+id/imageButton"
        android:layout_toStartOf="@+id/imageButton"
        android:padding="4dp" />

    <ImageButton
        android:id="@+id/imageButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@null"
        android:src="@drawable/ic_action_refresh"
        android:layout_centerVertical="true" />

    <ProgressBar
        style="?android:attr/progressBarStyleHorizontal"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/progressBar"
        android:layout_alignParentBottom="true"
        android:layout_below="@+id/edittext"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_toLeftOf="@+id/imageButton"
        android:layout_toStartOf="@+id/imageButton" />

</RelativeLayout>

1 个答案:

答案 0 :(得分:1)

参考活动中的编辑文本并应用焦点监听器:

将NORMAL和LARGE定义为两个文本大小

edit_Text = (EditText) findViewById(R.id.edittext);
edit_Text.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
    if(hasFocus){
           this.setTextSize(LARGE);
    }else {
           this.setTextSize(NORMAL);
    }
   }
});