4

私はこのチュートリアルに従っています。

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 を使用しています。

私はそれを修正することはできません。

4

1 に答える 1