2015-07-03 74 views
0

我使用佈局文件夾中的自定義佈局爲操作欄設置了customview在自定義操作欄視圖佈局中進行Android搜索

以下是操作欄佈局的代碼。

custom_actionbar_home_page.xml

<?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="60.0dip" 
android:background="@drawable/b_header_strip" > 

<TextView 
    android:id="@+id/title_text" 
    android:layout_width="wrap_content" 
    android:layout_height="fill_parent" 
    android:layout_toLeftOf="@+id/search_btn" 
    android:layout_toRightOf="@+id/imageView1" 
    android:gravity="center" 
    android:paddingRight="15.0dip" 
    android:text="Dreamrun" 
    android:textAppearance="?android:textAppearanceLarge" 
    android:textColor="#ffffffff" 
    android:textStyle="bold" /> 

<ImageView 
    android:id="@+id/imageView1" 
    android:layout_width="35.0dip" 
    android:layout_height="35.0dip" 
    android:layout_alignParentLeft="true" 
    android:layout_centerVertical="true" 
    android:layout_marginLeft="8.0dip" 
    android:src="@drawable/ic_launcher" /> 

<ImageButton 
    android:id="@+id/search_btn" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_centerVertical="true" 
    android:layout_toLeftOf="@+id/love_btn" 
    android:background="@null" 
    android:src="@drawable/ic_search_header" 
    android:actionViewClass="android.widget.SearchView"/> 

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

</RelativeLayout> 

以下是在onCreate方法的活動代碼:

actionBar = getActionBar(); 
     actionBar.setDisplayShowHomeEnabled(false); 
     actionBar.setDisplayShowTitleEnabled(false); 
     Singleton.getInstance(getApplicationContext()); 


     View localView =   LayoutInflater.from(this).inflate(R.layout.custom_actionbar_home_page, null); 
     mTitleTextView = ((TextView)localView.findViewById(R.id.title_text)); 
     mTitleTextView.setText("DREAMRUN"); 
     ImageButton localImageButton = (ImageButton)localView.findViewById(R.id.search_btn); 


     SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE); 
     final SearchView searchView = (SearchView) localView.findViewById(R.id.search_btn); 
     SearchableInfo searchableInfo = searchManager.getSearchableInfo(getComponentName()); 
     searchView.setSearchableInfo(searchableInfo); 


     actionBar.setCustomView(localView); 
     actionBar.setDisplayShowCustomEnabled(true); 
     actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM | ActionBar.DISPLAY_SHOW_HOME); 

我的問題是,以顯示編輯文本輸入搜索關鍵字,當我點擊在search_btn。它應該與從菜單中搜索相同。

但在我的Activity我使用菜單文件的操作圖標。我正在使用actionbar的自定義佈局。

請給我一個解決方案,實現自定義佈局(actionbar)沒有菜單文件的搜索功能。

謝謝。

+0

你想達到什麼高度氣餒。嘗試使用新的工具欄 –

回答

0

你可以不投 '的ImageButton' 作爲 '搜索查看'

final SearchView searchView (SearchView)localView.findViewById(R.id.search_btn); 

看到這個link

相關問題