大佬教程收集整理的这篇文章主要介绍了Android Sherlock Action Bar – 样式SearchView,分享意图图标,homeAsUpIndicator,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
但我的主题需要Holo.Light.有什么方法可以通过样式为此设置自定义图标吗?
我在操作栏中使用以下操作项
@H_904_5@main_activity.xml
<menu xmlns:android="http://scheR_583_11845@as.android.com/apk/res/android" > <item android:id="@+id/action_search" android:actionViewClass="com.actionbarsherlock.widget.SearchView" android:icon="@drawable/ic_menu_search" android:showAsAction="always" android@R_29_6964@="Search"/> <item android:id="@+id/action_category" android:icon="@drawable/ic_menu_category" android:showAsAction="always" android@R_29_6964@="Category"/> <item android:id="@+id/action_sort" android:icon="@drawable/ic_menu_sort" android:showAsAction="always" android@R_29_6964@="Sort"> <menu> <item android:id="@+id/action_sort_dist_nf" android:icon="@android:drawable/ic_menu_search" android@R_29_6964@="Distance (Near-Far)"/> <item android:id="@+id/action_sort_dist_fn" android:icon="@android:drawable/ic_menu_search" android@R_29_6964@="Distance (Far-Near)"/> <item android:id="@+id/action_sort_alpha_az" android:icon="@drawable/ic_menu_sort_az" android@R_29_6964@="Alpha (A-z)"/> <item android:id="@+id/action_sort_alpha_za" android:icon="@drawable/ic_menu_sort_az" android@R_29_6964@="Alpha (Z-A)"/> </menu> </item> </menu>
activity_place.xml
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://scheR_583_11845@as.android.com/apk/res/android" > <item android:id="@+id/action_share" android:actionProviderClass="com.actionbarsherlock.widget.ShareActionProvider" android:icon="@drawable/ic_menu_share" android:showAsAction="always" android@R_29_6964@="Search"/> </menu>
<style name="Theme.mTheme" parent="android:Theme.Holo.Light"> <item name="android:homeAsUpInDicator">@drawable/image_with_whitecolorarrow</item> <item name="homeAsUpInDicator">@drawable/image_with_whitecolorarrow</item> </style>
对于自定义searchView:
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://scheR_583_11845@as.android.com/apk/res/android" > <item android:id="@+id/searchIcon" android:actionLayout="@layout/search_icon_actionview" android:icon="@drawable/search_icon" android:showAsAction="ifRoom|collapseActionView" android@R_29_6964@="Search"/> </menu>
searchIcon您可以使用自定义图标.但必须在Actionbar中具有正确大小的menuItem.
定义您的自定义searchView ie ..,search_icon_actionview.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://scheR_583_11845@as.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_margin="5dp" android:orientation="vertical" > <ImageView android:id="@+id/search_image" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_alignParentright="true" android:clickable="true" android:contentDescription="Search icon" android:paddingLeft="5dp" android:paddingRight="5dp" android:src="@drawable/search_icon" /> <AutoCompleteTextView android:id="@+id/search_editText" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_toLeftOf="@id/search_image" android:BACkground="@drawable/rounded_corners_white" android:hint="Search" android:imeOptions="actionSearch" android:padding="5dp" android:singleLine="true" android:textColor="@color/text_dark_grey" android:textColorHint="@color/text_light_grey" android:textSize="20dp" /> </RelativeLayout>
活动代码:
@Override public Boolean onOptionsItemSELEcted(MenuItem item) { switch (item.getItemId()) { case R.id.searchIcon: mEtSearchbar.clearFocus(); (new Handler()).postDelayed(new Runnable() { public void run() { mEtSearchbar.dispatchTouchEvent(MotionEvent.obtain( SystemClock.uptimeMillis(),SystemClock.uptimeMillis(),MotionEvent.ACTION_DOWN,0)); mEtSearchbar.dispatchTouchEvent(MotionEvent.obtain( SystemClock.uptimeMillis(),MotionEvent.ACTION_UP,0)); } },100); return true; default: return super.onOptionsItemSELEcted(item); } } @Override public void onCreateOptionsMenu(Menu menu,MenuInflater inflater) { inflater.inflate(R.menu.your_menu,menu); mSearchbar = (MenuItem) menu.findItem(R.id.searchIcon); View actionview = mSearchbar.getActionView(); mEtSearchbar = ((AutoCompleteTextView) actionview .findViewById(R.id.search_editText)); final ImageView searchImage = ((ImageView) actionview .findViewById(R.id.search_imagE)); searchImage.setOnClickListener(new View.onClickListener() { @Override public void onClick(View arg0) { String s = mEtSearchbar.getText().toString(); Intent intent = new Intent(CurrentActivity.this,SearchActivity.class); intent.putExtra("search_string",s); startActivity(intent); } }); mEtSearchbar .setOnEditOractionListener(new TextView.onEditOractionListener() { @Override public Boolean onEditOraction(TextView v,int actionId,KeyEvent event) { if (actionId == EditorInfo.IME_ACTION_SEARCH) { searchImage.performClick(); return true; } return false; } }); super.onCreateOptionsMenu(menu,inflater); }
以上是大佬教程为你收集整理的Android Sherlock Action Bar – 样式SearchView,分享意图图标,homeAsUpIndicator全部内容,希望文章能够帮你解决Android Sherlock Action Bar – 样式SearchView,分享意图图标,homeAsUpIndicator所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。