我在布局的工具栏中添加了一个EditText。我想从软键盘按下完成后访问EditText的值。我已经在我的活动的onCreate()中初始化了EditText。我想访问此EditText值并提供给我的api调用。
这里是我的xml布局
*
这是我的onCreate()
<FrameLayout
android:id="@+id/toolbar_container"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/app_bar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:theme="@style/Toolbar" >
<EditText
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/search_edit_text"
android:singleLine="true"
android:textCursorDrawable="@drawable/edit_text_cursor"
android:backgroundTint="@android:color/white"
android:imeOptions="actionSearch"
/>
</android.support.v7.widget.Toolbar>
</FrameLayout>
<android.support.v7.widget.RecyclerView
android:id="@+id/rv_ff"
android:layout_below="@+id/toolbar_container"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<ImageView
android:id="@+id/iv_ff"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:src="@drawable/stat_no_connection"
android:visibility="invisible" />
<ProgressBar
android:id="@+id/prog_bar_ff"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_centerInParent="true"
/>
<ImageView
android:id="@+id/nothing_to_show_here"
android:layout_width="match_parent"
android:layout_below="@+id/toolbar_container"
android:layout_height="match_parent"
android:src="@drawable/stat_nothing_gray"
android:scaleType="fitCenter"
android:layout_centerInParent="true"
android:visibility="invisible"/>
`
答案 0 :(得分:1)
您的searchEditText
位于工具栏中,因此请从工具栏中获取。
Toolbar toolbar = (Toolbar) findViewById(R.id.app_bar);
searchEditText = (EditText) toolbar.findViewById(R.id.search_edit_text);
done.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String value = searchEditText.getText().toString();
}
});