如何从SherlockFragment添加操作项

时间:2013-10-27 13:24:40

标签: android android-layout android-intent android-listview android-fragments

我想从shelock fragment向actionbar sherlock添加操作项,并且还需要实现点击监听器。我已经使用以下代码进行片段活动。

import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

import com.actionbarsherlock.app.SherlockFragment;
import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuInflater;

public class MyTasksFragment extends SherlockFragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
    View view=inflater.inflate(R.layout.mytask_fragment_layout, container, false);
    return view;
}

@Override
public void onCreateOptionsMenu( Menu menu, MenuInflater inflater) {
    inflater.inflate(R.menu.action_mytask, menu);
}
}

以下是action_mytask.xml的代码(ic_action_edit图像也在drawable文件夹中)

<menu xmlns:android="http://schemas.android.com/apk/res/android" >

<item android:id="@+id/action_task"
      android:icon="@drawable/ic_action_edit"
      android:title="@string/add_task"
      android:showAsAction="ifRoom" />
</menu>

添加的图标不会进入ABS。这是图像

enter image description here

我想知道

  1. How to add action items for the actionbar sherlock from sherlock fragment ?
  2. How to implement click listners for those activities ?
  3. 请帮忙,

    谢谢

2 个答案:

答案 0 :(得分:3)

你应该在onCreate中致电setHasOptionsMenu(true);,你应该致电super.onCreateOptionsMenu(menu, inflater)

答案 1 :(得分:2)

覆盖onCreate方法并将setHasOptionsMenu(true);放入其中。它会告诉活动片段有自己的选项菜单。对于单击侦听器覆盖onOptionsItemSelected方法。