1

有没有办法将夏洛克操作项样式(默认触摸反馈和长按反馈以及单击区域 - 宽度/高度)应用于自定义操作栏布局中的按钮?

src/MainActivity.java

getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
getSupportActionBar().setCustomView(R.layout.actionbar_main);

res/layout/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>
4

1 回答 1

3

用于's 样式Widget.Sherlock.ActionButtonImageButton要实现长按吐司效果,您需要使用 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
于 2013-01-28T16:23:09.177 回答