私はこのチュートリアルに従っています。
SearchView
リンクとして TabsViewpagerに追加したい:画像 1 http://www.uphinh.vn/image/stream/1386201.png
しかし、私のアプリ、リンクとしてTabsViewpagerにないSearchView:画像2 http://www.uphinh.vn/image/stream/1386202.png
私はそれを修正することはできません。
これは私のコードです:
これは FragmentTab3.java です。
public class FragmentTab3 extends SherlockFragment implements OnQueryTextListener { TextView mSearchText; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { setHasOptionsMenu(true); // Get the view from fragmenttab1.xml View view = inflater.inflate(R.layout.fragmenttab3, container, false); mSearchText =(TextView)view.findViewById(R.id.test); return view; } @Override public void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); setUserVisibleHint(true); } @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { // TODO Auto-generated method stub super.onCreateOptionsMenu(menu, inflater); inflater.inflate(R.menu.menutab3, menu); SearchView searchView = (SearchView) menu.findItem(R.id.action_search).getActionView(); searchView.setQueryHint("Search"); //searchView.setBackgroundColor(Color.WHITE); searchView.setOnQueryTextListener(this); } @Override public boolean onQueryTextChange(String newText) { // TODO Auto-generated method stub mSearchText.setText("Query so far:"+newText); mSearchText.setTextColor(Color.GREEN); return false; } @Override public boolean onQueryTextSubmit(String query) { // TODO Auto-generated method stub mSearchText.setText("Searching for: " + query + "..."); mSearchText.setTextColor(Color.RED); return false; } }
これはfragmenttab3.xmlです
<?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="match_parent" >
<TextView
android:id="@+id/test"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="@string/Fragment3" />
</RelativeLayout>
- これは menutab3.xml です
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@+id/action_search"
android:icon="@android:drawable/ic_menu_search"
android:title="Action Bar Search"
android:showAsAction="ifRoom|withText|collapseActionView"
android:actionViewClass="android.widget.SearchView" />
<item
android:id="@+id/gamepad"
android:title="@string/gamepad"
android:icon="@drawable/gamepad"
android:showAsAction="ifRoom|withText"
/>
<item
android:id="@+id/camera"
android:title="@string/camera"
android:icon="@drawable/camera"
android:showAsAction="ifRoom|withText"
/>
</menu>
libs actionbarsherlock を使用しています。
私はそれを修正することはできません。