我無法解決這個熟悉的場景。android:如何訪問當前佈局中新使用佈局的視圖
在我的項目中,我使用的ActionBarSherlock和Search icon
點擊我用自定義佈局替換ActionBar。問題是我怎樣才能得到onClickListener和所有從這個新的佈局的意見?
public boolean onCreateOptionsMenu(Menu menu) {
menu.add("Search")
.setIcon(R.drawable.ic_search)
.setActionView(R.layout.on_search_icon_clicked)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS |MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
return true;
}
my on_search_icon_clicked.xml is:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/search_image"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_alignParentRight="true"
android:src="@drawable/ic_search" />
<EditText
android:id="@+id/search_editText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/search_image"
android:hint="@string/search"
android:singleLine="true" />
</RelativeLayout>
現在如何得到這個search_image.setOnClickListener
和所有?
它說NullPointerException
如果我在我的onCreate中使用這個。
謝謝
膨脹視圖,添加偵聽器並將視圖傳遞給菜單生成器而不是佈局編號 – sherpya
http://developer.android.com/reference/android/view/MenuItem.html#setActionView%28android.view.View %29 而不是 http://developer.android.com/reference/android/view/MenuItem.html#setActionView%28int%29 – sherpya
但有2個視圖顯示。 EditText和圖像。這就是爲什麼我使用佈局ID –