有没有办法将sherlock动作项目样式(默认触摸反馈和长按反馈和点击区域 - 宽度/高度)应用到自定义操作栏布局中的按钮?
的src / MainActivity.java
getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
getSupportActionBar().setCustomView(R.layout.actionbar_main);
RES /布局/ actionbar_main.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="wrap_content" >
<!-- Home button -->
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_marginLeft="12dp"
android:background="@drawable/ic_home"
android:contentDescription="@string/ic_home"
android:onClick="clickButtonHome" />
<!-- Centered text -->
<TextView
android:id="@+id/add_actionbar_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="@string/title_activity_main"
android:textAppearance="?android:attr/textAppearanceMedium" />
<!-- Cancel button -->
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="12dp"
android:background="@drawable/ic_cancel"
android:contentDescription="@string/ic_cancel"
android:onClick="clickButtonHome" />
</RelativeLayout>
答案 0 :(得分:3)
使用Widget.Sherlock.ActionButton
作为ImageButton
的样式。要实现长期点击吐司效果,您需要使用Roman Nurik的CheetSheet课程。
为了将来参考,所有ActionBarSherlock样式和主题都具有与原生样式和主题相同的命名约定,但使用'Sherlock'而不是'Holo'。例如,
Widget.Holo.ActionButton
变为Widget.Sherlock.ActionButton
Theme.Holo.Light.DarkActionBar
变为Theme.Sherlock.LightDarkActionBar
TextAppearance.Holo.Widget.ActionBar.Title
变为TextAppearance.Sherlock.Widget.ActionBar.Title